|
BmnRoot 26.10.0-210-gc52d34b0
Software framework of the BM@N experiment
|
Class for description of algorithm of recognition of clusters in Bmn Ndet detector. More...
#include <BmnNdetClusterFinder.h>
Public Types | |
| enum | eCellStatus { kIsNotUsed = 0 , kIsUsed } |
| Flag if the cell belongs to any cluster. More... | |
| enum | eClusterStatus { kNoCluster = -1 , kUnchecked = 0 , kIsNeutron , kNotNeutron } |
| Status of the cluster. More... | |
| Public Types inherited from TObject | |
| enum | EDeprecatedStatusBits |
| enum | EStatusBits |
Public Member Functions | |
| BmnNdetClusterFinder (const Int_t kNColumns=11, const Int_t kNRows=11, const Int_t kNLayers=16) | |
| Default constructor. | |
| ~BmnNdetClusterFinder () | |
| Default destructor. | |
| Int_t | GetNClusters () |
| Int_t | GetNCells () |
| Int_t | GetNCells (Double_t threshold) |
| Number of cells in event with deposited energy higher than threshold. | |
| Int_t | GetNColumns () |
| Int_t | GetNRows () |
| Int_t | GetNLayers () |
| vector< Int_t > | GetCells () |
| vector< Int_t > | GetColumns () |
| vector< Int_t > | GetRows () |
| vector< Int_t > | GetLayers () |
| vector< Double_t > | GetX () |
| vector< Double_t > | GetY () |
| vector< Double_t > | GetZ () |
| vector< Double_t > | GetTime () |
| vector< Double_t > | GetEdep () |
| vector< Double_t > | GetBeta () |
| Int_t | GetClusterStatus (Int_t i_cluster) |
| Status of a cluster. | |
| void | SetClusterStatus (Int_t i_cluster, eClusterStatus status) |
| Set status of a cluster. | |
| void | Fill (Int_t cell, Int_t column, Int_t row, Int_t layer, Double_t x, Double_t y, Double_t z, Double_t t, Double_t e_dep) |
| Add cell to the list of fired cells For correct work of the code it is needed that columns, rows and layers were enumerated from 0, not 1 ! | |
| void | Clear () |
| Clear all vectors, set fNCells=0. | |
| void | Print () |
| Print. | |
| BmnNdetCluster * | GetCluster (Int_t i_cluster) |
| Get BmnNdetCluster object. | |
| BmnNdetCluster * | AddCluster () |
| Add empty BmnNdetCluster to the list of clusters. | |
| void | AddCellToCluster (Int_t i_cell, Int_t i_cluster) |
| Mark a cell i_cell as belonging to cluster i_cluster. | |
| Int_t | FindClusters1 () |
| Main method of a class. | |
| Int_t | FindClusters1_2 () |
| Main method of a class. | |
| Int_t | FindClusters2 () |
| Main method of a class. | |
| Int_t | FindClusters2_2 () |
| Main method of a class. | |
| Int_t | FindClusters3 (Double_t cut_beta=0.03) |
| Main method of a class. | |
| Int_t | FindClusters4 (Double_t cut_beta=0.01) |
| Second method of searching for the clusters. | |
| Int_t | SelectNeutrons (Double_t cut_angle=45., Int_t cut_ncells=3, Bool_t check_border=kFALSE) |
| Select neutrons. | |
| Int_t | MergeClusters (Int_t i_cluster_1, Int_t i_cluster_2) |
| Merge clusters The cells of cluster with maximal i_cluster are added to the cluster with minimal i_cluster The cluster with maximal i_cluster is destroyed. | |
| Int_t | CalculateNumberOfNeutrons (Double_t weight_edep=1., Double_t weight_ncells=0.01, Double_t weight_nclusters=0.05, Double_t threshold12=0.) |
| Estimate number of neutrons based on: | |
| virtual const char * | GetClassName () |
| Public Member Functions inherited from TObject | |
| TObject () | |
| TObject (const TObject &object) | |
| virtual | ~TObject () |
| void | AbstractMethod (const char *method) const |
| virtual void | AppendPad (Option_t *option="") |
| virtual void | Browse (TBrowser *b) |
| ULong_t | CheckedHash () |
| virtual const char * | ClassName () const |
| virtual void | Clear (Option_t *="") |
| virtual TObject * | Clone (const char *newname="") const |
| virtual Int_t | Compare (const TObject *obj) const |
| virtual void | Copy (TObject &object) const |
| virtual void | Delete (Option_t *option="") |
| virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
| virtual void | Draw (Option_t *option="") |
| virtual void | DrawClass () const |
| virtual TObject * | DrawClone (Option_t *option="") const |
| virtual void | Dump () const |
| virtual void | Error (const char *method, const char *msgfmt,...) const |
| virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
| virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
| virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
| virtual void | Fatal (const char *method, const char *msgfmt,...) const |
| virtual TObject * | FindObject (const char *name) const |
| virtual TObject * | FindObject (const TObject *obj) const |
| virtual Option_t * | GetDrawOption () const |
| virtual const char * | GetIconName () const |
| virtual const char * | GetName () const |
| virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
| virtual Option_t * | GetOption () const |
| virtual const char * | GetTitle () const |
| virtual UInt_t | GetUniqueID () const |
| virtual Bool_t | HandleTimer (TTimer *timer) |
| virtual ULong_t | Hash () const |
| Bool_t | HasInconsistentHash () const |
| virtual void | Info (const char *method, const char *msgfmt,...) const |
| virtual Bool_t | InheritsFrom (const char *classname) const |
| virtual Bool_t | InheritsFrom (const TClass *cl) const |
| virtual void | Inspect () const |
| void | InvertBit (UInt_t f) |
| virtual TClass * | IsA () const |
| Bool_t | IsDestructed () const |
| virtual Bool_t | IsEqual (const TObject *obj) const |
| virtual Bool_t | IsFolder () const |
| R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
| virtual Bool_t | IsSortable () const |
| R__ALWAYS_INLINE Bool_t | IsZombie () const |
| virtual void | ls (Option_t *option="") const |
| void | MayNotUse (const char *method) const |
| virtual Bool_t | Notify () |
| void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
| void | operator delete (void *ptr) |
| void | operator delete (void *ptr, void *vp) |
| void | operator delete[] (void *ptr) |
| void | operator delete[] (void *ptr, void *vp) |
| void * | operator new (size_t sz) |
| void * | operator new (size_t sz, void *vp) |
| void * | operator new[] (size_t sz) |
| void * | operator new[] (size_t sz, void *vp) |
| TObject & | operator= (const TObject &rhs) |
| virtual void | Paint (Option_t *option="") |
| virtual void | Pop () |
| virtual void | Print (Option_t *option="") const |
| virtual Int_t | Read (const char *name) |
| virtual void | RecursiveRemove (TObject *obj) |
| void | ResetBit (UInt_t f) |
| virtual void | SaveAs (const char *filename="", Option_t *option="") const |
| virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
| void | SetBit (UInt_t f) |
| void | SetBit (UInt_t f, Bool_t set) |
| virtual void | SetDrawOption (Option_t *option="") |
| virtual void | SetUniqueID (UInt_t uid) |
| virtual void | Streamer (TBuffer &) |
| void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
| virtual void | SysError (const char *method, const char *msgfmt,...) const |
| R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
| Int_t | TestBits (UInt_t f) const |
| virtual void | UseCurrentStyle () |
| virtual void | Warning (const char *method, const char *msgfmt,...) const |
| virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
| virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
Private Attributes | |
| vector< BmnNdetCluster * > | fClusters |
| Recognized clusters. | |
| vector< eClusterStatus > | fClusterStatus |
| Flag if cell belongs to some cluster. | |
| Int_t | fNCells |
| Number of fired cells in event. | |
| Int_t | fNClusters |
| Number of recognized clusters. | |
| Int_t | fNUncheckedCellsInEvent |
| Number of cells not belonging to any cluster. | |
| vector< Int_t > | fIndexTime |
| Index of cells sorted by ascending time. | |
| vector< Int_t > | fIndexEdep |
| Index of cells sorted by decending deposited energy. | |
| vector< Int_t > | fIndexBeta |
| Index of cells sorted by decending beta. | |
| vector< eCellStatus > | fCellStatus |
| Flag if cell belongs to some cluster. | |
| vector< Int_t > | fCell |
| Index of a cell in BmnNdetCell array in BmnNdetEvent object. | |
| vector< Int_t > | fColumn |
| Column index of a cell. It must be proportional to X coordinate in self coordinate system of a detector. | |
| vector< Int_t > | fRow |
| Row index of a cell. It must be proportional to Y coordinate in self coordinate system of a detector. | |
| vector< Int_t > | fLayer |
| Layer index of a cell. It must be proportional to Z coordinate in self coordinate system of a detector. | |
| vector< Double_t > | fXcoord |
| X coordinate [cm]. | |
| vector< Double_t > | fYcoord |
| Y coordinate [cm]. | |
| vector< Double_t > | fZcoord |
| Z coordinate [cm]. | |
| vector< Double_t > | fTime |
| Time of actuation of the cell [ns]. | |
| vector< Double_t > | fEdep |
| Energy deposited in the cell [GeV]. | |
| vector< Double_t > | fBeta |
| Beta = v/c, v = d/t. | |
| vector< vector< vector< Int_t > > > | fIndexXYZ |
Additional Inherited Members | |
| Static Public Member Functions inherited from TObject | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static const char * | DeclFileName () |
| static Longptr_t | GetDtorOnly () |
| static Bool_t | GetObjectStat () |
| static void | SetDtorOnly (void *obj) |
| static void | SetObjectStat (Bool_t stat) |
| Public Attributes inherited from TObject | |
| kIsOnHeap | |
| kNotDeleted | |
| kZombie | |
| kInconsistent | |
| kBitMask | |
| kSingleKey | |
| kOverwrite | |
| kWriteDelete | |
| kObjInCanvas | |
| kCanDelete | |
| kMustCleanup | |
| kIsReferenced | |
| kHasUUID | |
| kCannotPick | |
| kNoContextMenu | |
| kInvalidObject | |
| Protected Member Functions inherited from TObject | |
| virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
| void | MakeZombie () |
| Static Protected Member Functions inherited from TObject | |
| static void | SavePrimitiveConstructor (std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE) |
| static void | SavePrimitiveDraw (std::ostream &out, const char *variable_name, Option_t *option=nullptr) |
| static TString | SavePrimitiveVector (std::ostream &out, const char *prefix, Int_t len, Double_t *arr, Bool_t empty_line=kFALSE) |
| Protected Attributes inherited from TObject | |
| kOnlyPrepStep | |
BmnNdetClusterFinder must be run in the following order:
Definition at line 25 of file BmnNdetClusterFinder.h.
| Enumerator | ||
|---|---|---|
| kIsNotUsed | 0 | the cell doesn't belong to any cluster |
| kIsUsed | the cell belongs to some cluster | |
Definition at line 29 of file BmnNdetClusterFinder.h.
| Enumerator | ||
|---|---|---|
| kNoCluster | -1 | there is no cluster |
| kUnchecked | 0 | the cluster is not checked yet |
| kIsNeutron | the cluster is produced by neutron | |
| kNotNeutron | the cluster can't be produced by neutron | |
Definition at line 36 of file BmnNdetClusterFinder.h.
| BmnNdetClusterFinder::BmnNdetClusterFinder | ( | const Int_t | kNColumns = 11, |
| const Int_t | kNRows = 11, | ||
| const Int_t | kNLayers = 16 ) |
Definition at line 15 of file BmnNdetClusterFinder.cxx.
References TObject::TObject(), fClusters, fIndexXYZ, fNCells, and fNClusters.
| BmnNdetClusterFinder::~BmnNdetClusterFinder | ( | ) |
Definition at line 24 of file BmnNdetClusterFinder.cxx.
References fIndexXYZ, GetNColumns(), and GetNRows().
| i_cell | index of cell in order of its filling with BmnNdetClusterFinder::Fill() method |
| i_cluster | index of cluster in order of its addition with BmnNdetClusterFinder::AddCluster() method. The last cluster is taken by default. |
Definition at line 217 of file BmnNdetClusterFinder.cxx.
References BmnNdetCluster::AddCell(), fBeta, fCell, fCellStatus, fColumn, fEdep, fLayer, fNCells, fNClusters, fNUncheckedCellsInEvent, fRow, fTime, fXcoord, fYcoord, fZcoord, GetCluster(), i, kIsUsed, x, y, and z.
Referenced by FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
| BmnNdetCluster * BmnNdetClusterFinder::AddCluster | ( | ) |
Definition at line 208 of file BmnNdetClusterFinder.cxx.
References fClusters, fClusterStatus, fNClusters, and kUnchecked.
Referenced by FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
| Int_t BmnNdetClusterFinder::CalculateNumberOfNeutrons | ( | Double_t | weight_edep = 1., |
| Double_t | weight_ncells = 0.01, | ||
| Double_t | weight_nclusters = 0.05, | ||
| Double_t | threshold12 = 0. ) |
| weight_edep | * total deposited energy in accepted clusters |
| weight_nclusters | * number of accepted clusters |
| weight_ncells | * total number of cells in accepted clusters. If sum of weighed parameters exceeds |
| threshold12 | there is more than 1 neutron |
Definition at line 645 of file BmnNdetClusterFinder.cxx.
References BmnNdetCluster::EnergyDeposited(), fClusterStatus, fNClusters, GetCluster(), BmnNdetCluster::GetNCells(), and kIsNeutron.
| void BmnNdetClusterFinder::Clear | ( | ) |
Definition at line 671 of file BmnNdetClusterFinder.cxx.
References fBeta, fCell, fCellStatus, fClusters, fClusterStatus, fColumn, fEdep, fIndexBeta, fIndexEdep, fIndexTime, fIndexXYZ, fLayer, fNCells, fNClusters, fRow, fTime, fXcoord, fYcoord, fZcoord, GetNColumns(), GetNLayers(), GetNRows(), and i.
| void BmnNdetClusterFinder::Fill | ( | Int_t | cell, |
| Int_t | column, | ||
| Int_t | row, | ||
| Int_t | layer, | ||
| Double_t | x, | ||
| Double_t | y, | ||
| Double_t | z, | ||
| Double_t | t, | ||
| Double_t | e_dep ) |
| cell | index of cell in BmnNdetCell array in BmnNdetEvent object. |
| column | index of column. It must be enumerated starting from 0. The column number must increase in the same direction as X axis. |
| row | index of row. It must be enumerated starting from 0. The row number must increase in the same direction as Y axis. |
| layer | index of layer. It must be enumerated starting from 0. The layer number must increase in the same direction as Z axis. |
| x | X coordinate of the fired cell |
| y | Y coordinate of the fired cell |
| z | Z coordinate of the fired cell |
| t | Time of actuation of the fired cell |
| e_dep | Energy deposited in cell [GeV] |
Definition at line 35 of file BmnNdetClusterFinder.cxx.
References TMath::C(), fBeta, fCell, fCellStatus, fColumn, fEdep, fIndexBeta, fIndexEdep, fIndexTime, fIndexXYZ, fLayer, fNCells, fRow, fTime, fXcoord, fYcoord, fZcoord, GetNColumns(), GetNLayers(), GetNRows(), i, kIsNotUsed, TMath::Sq(), TMath::Sqrt(), x, y, and z.
| Int_t BmnNdetClusterFinder::FindClusters1 | ( | ) |
The clusters are groups of neighbouring cells. Time and deposited energies are not taken into account.
Before you use it, you must fill data with BmnNdetClusterFinder::Fill() method.
This algorithm loops over cells in order of ascending time.
Definition at line 241 of file BmnNdetClusterFinder.cxx.
References AddCellToCluster(), AddCluster(), fCellStatus, fIndexTime, fIndexXYZ, fNCells, fNClusters, fNUncheckedCellsInEvent, BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
| Int_t BmnNdetClusterFinder::FindClusters1_2 | ( | ) |
The clusters are groups of neighbouring cells. Time and deposited energies are not taken into account.
Before you use it, you must fill data with BmnNdetClusterFinder::Fill() method.
This algorithm loops over cells in order of ascending time.
If the cluster starts from veto layer, include to cluster all cells with the same row and column
Definition at line 293 of file BmnNdetClusterFinder.cxx.
References AddCellToCluster(), AddCluster(), fCellStatus, fIndexTime, fIndexXYZ, fNCells, fNClusters, fNUncheckedCellsInEvent, BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
| Int_t BmnNdetClusterFinder::FindClusters2 | ( | ) |
The clusters are groups of neighbouring cells.
Time and deposited energies are not taken into account.
This algorithm loops over cells in order of descending speed.
Before you use it, you must fill data with BmnNdetClusterFinder::Fill() method.
Definition at line 359 of file BmnNdetClusterFinder.cxx.
References AddCellToCluster(), AddCluster(), fCellStatus, fIndexBeta, fIndexXYZ, fNCells, fNClusters, fNUncheckedCellsInEvent, BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
| Int_t BmnNdetClusterFinder::FindClusters2_2 | ( | ) |
The clusters are groups of neighbouring cells.
One more layer is added for checking (the gap of 1 layer doesn't count)
Time and deposited energies are not taken into account.
This algorithm loops over cells in order of descending speed.
Before you use it, you must fill data with BmnNdetClusterFinder::Fill() method.
Definition at line 411 of file BmnNdetClusterFinder.cxx.
References AddCellToCluster(), AddCluster(), fCellStatus, fIndexBeta, fIndexXYZ, fNCells, fNClusters, fNUncheckedCellsInEvent, BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
The clusters are groups of neighbouring cells.
If difference of beta between cells > cut_beta, start a new cluster. Time and deposited energies are not taken into account.
This algorithm loops over cells in order of descending speed.
Before you use it, you must fill data with BmnNdetClusterFinder::Fill() method.
Definition at line 463 of file BmnNdetClusterFinder.cxx.
References TMath::Abs(), AddCellToCluster(), AddCluster(), fBeta, fCellStatus, fIndexBeta, fIndexXYZ, fNCells, fNClusters, fNUncheckedCellsInEvent, BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, kIsNotUsed, and kIsUsed.
Before you use it, you must fill data with BmnNdetClusterFinder::Fill() method.
This algorithm loops over cells in order of ascending time.
While checking neighbouring cell, the time of flight between cells is taken into account. The cell is added to the cluster, if the speed of propagation of the hadronic shower between the cells is the same as the speed of initial neutron.
| cut_beta | maximum difference between beta of propagation of shower and beta calculated from the first cell in cluster. |
Definition at line 519 of file BmnNdetClusterFinder.cxx.
References TMath::Abs(), AddCellToCluster(), AddCluster(), BmnNdetCluster::BetaFirst(), TMath::C(), fCellStatus, fIndexTime, fIndexXYZ, fNCells, fNClusters, fNUncheckedCellsInEvent, BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), BmnNdetCluster::GetTime(), BmnNdetCluster::GetX(), BmnNdetCluster::GetY(), BmnNdetCluster::GetZ(), iX, iY, iZ, kIsNotUsed, kIsUsed, TMath::Sq(), TMath::Sqrt(), and z0.
| vector< Double_t > BmnNdetClusterFinder::GetBeta | ( | ) |
Definition at line 181 of file BmnNdetClusterFinder.cxx.
References fBeta.
| vector< Int_t > BmnNdetClusterFinder::GetCells | ( | ) |
Definition at line 145 of file BmnNdetClusterFinder.cxx.
References fCell.
|
inlinevirtual |
Definition at line 296 of file BmnNdetClusterFinder.h.
| BmnNdetCluster * BmnNdetClusterFinder::GetCluster | ( | Int_t | i_cluster | ) |
| i_cluster | index of recognized cluster |
Definition at line 186 of file BmnNdetClusterFinder.cxx.
References fClusters, and fNClusters.
Referenced by AddCellToCluster(), CalculateNumberOfNeutrons(), MergeClusters(), and SelectNeutrons().
It is assigned to the cluster when applying BmnNdetClusterFinder::SelectNeutrons() method.
| i_cluster | index of BmnNdetCluster object |
Definition at line 193 of file BmnNdetClusterFinder.cxx.
References fClusterStatus, fNClusters, and kNoCluster.
| vector< Int_t > BmnNdetClusterFinder::GetColumns | ( | ) |
Definition at line 149 of file BmnNdetClusterFinder.cxx.
References fColumn.
| vector< Double_t > BmnNdetClusterFinder::GetEdep | ( | ) |
Definition at line 177 of file BmnNdetClusterFinder.cxx.
References fEdep.
| vector< Int_t > BmnNdetClusterFinder::GetLayers | ( | ) |
Definition at line 157 of file BmnNdetClusterFinder.cxx.
References fLayer.
| Int_t BmnNdetClusterFinder::GetNCells | ( | ) |
Definition at line 115 of file BmnNdetClusterFinder.cxx.
References fNCells.
Referenced by FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
| threshold | minimal deposited energy in counted cells |
Definition at line 120 of file BmnNdetClusterFinder.cxx.
| Int_t BmnNdetClusterFinder::GetNClusters | ( | ) |
Definition at line 110 of file BmnNdetClusterFinder.cxx.
References fNClusters.
| Int_t BmnNdetClusterFinder::GetNColumns | ( | ) |
Definition at line 130 of file BmnNdetClusterFinder.cxx.
References fIndexXYZ.
Referenced by ~BmnNdetClusterFinder(), Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), and SelectNeutrons().
| Int_t BmnNdetClusterFinder::GetNLayers | ( | ) |
Definition at line 140 of file BmnNdetClusterFinder.cxx.
References fIndexXYZ.
Referenced by Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), and SelectNeutrons().
| Int_t BmnNdetClusterFinder::GetNRows | ( | ) |
Definition at line 135 of file BmnNdetClusterFinder.cxx.
References fIndexXYZ.
Referenced by ~BmnNdetClusterFinder(), Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), and SelectNeutrons().
| vector< Int_t > BmnNdetClusterFinder::GetRows | ( | ) |
Definition at line 153 of file BmnNdetClusterFinder.cxx.
References fRow.
| vector< Double_t > BmnNdetClusterFinder::GetTime | ( | ) |
Definition at line 173 of file BmnNdetClusterFinder.cxx.
References fTime.
| vector< Double_t > BmnNdetClusterFinder::GetX | ( | ) |
Definition at line 161 of file BmnNdetClusterFinder.cxx.
References fXcoord.
| vector< Double_t > BmnNdetClusterFinder::GetY | ( | ) |
Definition at line 165 of file BmnNdetClusterFinder.cxx.
References fYcoord.
| vector< Double_t > BmnNdetClusterFinder::GetZ | ( | ) |
Definition at line 169 of file BmnNdetClusterFinder.cxx.
References fZcoord.
If i_cluster_1==i_cluster_2, cancel merging.
| i_cluster_1 | first cluster |
| i_cluster_2 | second cluster |
Definition at line 603 of file BmnNdetClusterFinder.cxx.
References BmnNdetCluster::AddCell(), fClusters, fClusterStatus, fNClusters, BmnNdetCluster::GetBeta(), GetCluster(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetEdep(), BmnNdetCluster::GetLayers(), BmnNdetCluster::GetNCells(), BmnNdetCluster::GetRows(), BmnNdetCluster::GetTime(), BmnNdetCluster::GetX(), BmnNdetCluster::GetY(), BmnNdetCluster::GetZ(), max(), and min().
| void BmnNdetClusterFinder::Print | ( | ) |
Definition at line 706 of file BmnNdetClusterFinder.cxx.
References fBeta, fCell, fColumn, fEdep, fIndexBeta, fIndexEdep, fIndexTime, fIndexXYZ, fLayer, fNCells, fRow, fTime, fXcoord, fYcoord, fZcoord, and i.
| Int_t BmnNdetClusterFinder::SelectNeutrons | ( | Double_t | cut_angle = 45., |
| Int_t | cut_ncells = 3, | ||
| Bool_t | check_border = kFALSE ) |
| cut_angle | accept, if BmnNdetCluster::AngleToTarget() < cut_angle |
| cut_ncells | accept, if BmnNdetCluster::GetNCells() >= cut_ncells |
| check_border | use BmnNdetCluster::StartsOnBorder() check |
Definition at line 625 of file BmnNdetClusterFinder.cxx.
References BmnNdetCluster::AngleToTarget(), fClusterStatus, fNClusters, GetCluster(), BmnNdetCluster::GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), kIsNeutron, kNotNeutron, and BmnNdetCluster::StartsOnBorder().
| void BmnNdetClusterFinder::SetClusterStatus | ( | Int_t | i_cluster, |
| eClusterStatus | status ) |
| i_cluster | index of BmnNdetCluster object |
| status | status of a cluster (see eClusterStatus for details) |
Definition at line 200 of file BmnNdetClusterFinder.cxx.
References fClusterStatus, and fNClusters.
|
private |
Definition at line 86 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), FindClusters3(), GetBeta(), and Print().
|
private |
Definition at line 68 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetCells(), and Print().
|
private |
Definition at line 65 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
|
private |
Definition at line 46 of file BmnNdetClusterFinder.h.
Referenced by BmnNdetClusterFinder(), AddCluster(), Clear(), GetCluster(), and MergeClusters().
|
private |
Definition at line 48 of file BmnNdetClusterFinder.h.
Referenced by AddCluster(), CalculateNumberOfNeutrons(), Clear(), GetClusterStatus(), MergeClusters(), SelectNeutrons(), and SetClusterStatus().
|
private |
Definition at line 70 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetColumns(), and Print().
|
private |
Definition at line 84 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetEdep(), GetNCells(), and Print().
|
private |
Definition at line 62 of file BmnNdetClusterFinder.h.
Referenced by Clear(), Fill(), FindClusters2(), FindClusters2_2(), FindClusters3(), and Print().
|
private |
Definition at line 60 of file BmnNdetClusterFinder.h.
|
private |
Definition at line 58 of file BmnNdetClusterFinder.h.
Referenced by Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters4(), and Print().
|
private |
Definition at line 88 of file BmnNdetClusterFinder.h.
Referenced by BmnNdetClusterFinder(), ~BmnNdetClusterFinder(), Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), GetNColumns(), GetNLayers(), GetNRows(), and Print().
|
private |
Definition at line 74 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetLayers(), and Print().
|
private |
Definition at line 51 of file BmnNdetClusterFinder.h.
Referenced by BmnNdetClusterFinder(), AddCellToCluster(), Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), GetNCells(), GetNCells(), and Print().
|
private |
Definition at line 53 of file BmnNdetClusterFinder.h.
Referenced by BmnNdetClusterFinder(), AddCellToCluster(), AddCluster(), CalculateNumberOfNeutrons(), Clear(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), GetCluster(), GetClusterStatus(), GetNClusters(), MergeClusters(), SelectNeutrons(), and SetClusterStatus().
|
private |
Definition at line 55 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
|
private |
Definition at line 72 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetRows(), and Print().
|
private |
Definition at line 82 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetTime(), and Print().
|
private |
Definition at line 76 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetX(), and Print().
|
private |
Definition at line 78 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetY(), and Print().
|
private |
Definition at line 80 of file BmnNdetClusterFinder.h.
Referenced by AddCellToCluster(), Clear(), Fill(), GetZ(), and Print().