|
BmnRoot
|
Class for description of algorithm of recognition of clusters in Bmn Ndet detector. More...
#include <BmnNdetClusterFinder.h>
Public Types | |
| enum | eCellStatus { kIsNotUsed = 0 , kIsUsed , kIsNotUsed = 0 , kIsUsed } |
| Flag if the cell belongs to any cluster. More... | |
| enum | eClusterStatus { kNoCluster = -1 , kUnchecked = 0 , kIsNeutron , kNotNeutron , kNoCluster = -1 , kUnchecked = 0 , kIsNeutron , kNotNeutron } |
| Status of the cluster. More... | |
| enum | eCellStatus { kIsNotUsed = 0 , kIsUsed , kIsNotUsed = 0 , kIsUsed } |
| Flag if the cell belongs to any cluster. More... | |
| enum | eClusterStatus { kNoCluster = -1 , kUnchecked = 0 , kIsNeutron , kNotNeutron , kNoCluster = -1 , kUnchecked = 0 , kIsNeutron , kNotNeutron } |
| Status of the cluster. More... | |
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) |
| 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) |
| void | SetClusterStatus (Int_t i_cluster, eClusterStatus status) |
| 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) |
| void | Clear () |
| Clear all vectors, set fNCells=0. | |
| void | Print () |
| Print. | |
| BmnNdetCluster * | GetCluster (Int_t i_cluster) |
| BmnNdetCluster * | AddCluster () |
| void | AddCellToCluster (Int_t i_cell, Int_t i_cluster) |
| Int_t | FindClusters1 () |
| Int_t | FindClusters1_2 () |
| Int_t | FindClusters2 () |
| Int_t | FindClusters2_2 () |
| Int_t | FindClusters3 (Double_t cut_beta=0.03) |
| Int_t | FindClusters4 (Double_t cut_beta=0.01) |
| Int_t | SelectNeutrons (Double_t cut_angle=45., Int_t cut_ncells=3, Bool_t check_border=kFALSE) |
| Int_t | MergeClusters (Int_t i_cluster_1, Int_t i_cluster_2) |
| Int_t | CalculateNumberOfNeutrons (Double_t weight_edep=1., Double_t weight_ncells=0.01, Double_t weight_nclusters=0.05, Double_t threshold12=0.) |
| virtual const char * | GetClassName () |
| 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) |
| 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) |
| void | SetClusterStatus (Int_t i_cluster, eClusterStatus status) |
| 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) |
| void | Clear () |
| Clear all vectors, set fNCells=0. | |
| void | Print () |
| Print. | |
| BmnNdetCluster * | GetCluster (Int_t i_cluster) |
| BmnNdetCluster * | AddCluster () |
| void | AddCellToCluster (Int_t i_cell, Int_t i_cluster) |
| Int_t | FindClusters1 () |
| Int_t | FindClusters1_2 () |
| Int_t | FindClusters2 () |
| Int_t | FindClusters2_2 () |
| Int_t | FindClusters3 (Double_t cut_beta=0.03) |
| Int_t | FindClusters4 (Double_t cut_beta=0.01) |
| Int_t | SelectNeutrons (Double_t cut_angle=45., Int_t cut_ncells=3, Bool_t check_border=kFALSE) |
| Int_t | MergeClusters (Int_t i_cluster_1, Int_t i_cluster_2) |
| Int_t | CalculateNumberOfNeutrons (Double_t weight_edep=1., Double_t weight_ncells=0.01, Double_t weight_nclusters=0.05, Double_t threshold12=0.) |
| virtual const char * | GetClassName () |
Class for description of algorithm of recognition of clusters in Bmn Ndet detector.
BmnNdetClusterFinder must be run in the following order:
Definition at line 25 of file BmnNdetClusterFinder.h.
Flag if the cell belongs to any cluster.
| Enumerator | |
|---|---|
| kIsNotUsed | the cell doesn't belong to any cluster |
| kIsUsed | the cell belongs to some cluster |
| kIsNotUsed | the cell doesn't belong to any cluster |
| kIsUsed | the cell belongs to some cluster |
Definition at line 29 of file BmnNdetClusterFinder.h.
Flag if the cell belongs to any cluster.
| Enumerator | |
|---|---|
| kIsNotUsed | the cell doesn't belong to any cluster |
| kIsUsed | the cell belongs to some cluster |
| kIsNotUsed | the cell doesn't belong to any cluster |
| kIsUsed | the cell belongs to some cluster |
Definition at line 29 of file BmnNdetClusterFinder.h.
Status of the cluster.
Definition at line 36 of file BmnNdetClusterFinder.h.
Status of the cluster.
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 |
||
| ) |
Default constructor.
Definition at line 15 of file BmnNdetClusterFinder.cxx.
| BmnNdetClusterFinder::~BmnNdetClusterFinder | ( | ) |
Default destructor.
Definition at line 24 of file BmnNdetClusterFinder.cxx.
References GetNColumns(), and GetNRows().
| BmnNdetClusterFinder::BmnNdetClusterFinder | ( | const Int_t | kNColumns = 11, |
| const Int_t | kNRows = 11, |
||
| const Int_t | kNLayers = 16 |
||
| ) |
Default constructor.
| BmnNdetClusterFinder::~BmnNdetClusterFinder | ( | ) |
Default destructor.
| void BmnNdetClusterFinder::AddCellToCluster | ( | Int_t | i_cell, |
| Int_t | i_cluster = -1 |
||
| ) |
Mark a cell i_cell as belonging to cluster i_cluster
| 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(), GetCluster(), i, and kIsUsed.
Referenced by FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
| void BmnNdetClusterFinder::AddCellToCluster | ( | Int_t | i_cell, |
| Int_t | i_cluster | ||
| ) |
Mark a cell i_cell as belonging to cluster i_cluster
| 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. |
| BmnNdetCluster * BmnNdetClusterFinder::AddCluster | ( | ) |
Add empty BmnNdetCluster to the list of clusters
Definition at line 208 of file BmnNdetClusterFinder.cxx.
References kUnchecked.
Referenced by FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
| BmnNdetCluster * BmnNdetClusterFinder::AddCluster | ( | ) |
Add empty BmnNdetCluster to the list of clusters
| 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. |
||
| ) |
Estimate number of neutrons based on:
| 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(), GetCluster(), BmnNdetCluster::GetNCells(), and kIsNeutron.
| 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. |
||
| ) |
Estimate number of neutrons based on:
| 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 |
| void BmnNdetClusterFinder::Clear | ( | ) |
Clear all vectors, set fNCells=0.
Definition at line 671 of file BmnNdetClusterFinder.cxx.
References GetNColumns(), GetNLayers(), GetNRows(), and i.
| void BmnNdetClusterFinder::Clear | ( | ) |
Clear all vectors, set fNCells=0.
| 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 | ||
| ) |
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 !
| 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 GetNColumns(), GetNLayers(), GetNRows(), i, and kIsNotUsed.
| 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 | ||
| ) |
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 !
| 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] |
| Int_t BmnNdetClusterFinder::FindClusters1 | ( | ) |
Main method of a class.
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(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
| Int_t BmnNdetClusterFinder::FindClusters1 | ( | ) |
Main method of a class.
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.
| Int_t BmnNdetClusterFinder::FindClusters1_2 | ( | ) |
Main method of a class.
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(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
| Int_t BmnNdetClusterFinder::FindClusters1_2 | ( | ) |
Main method of a class.
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
| Int_t BmnNdetClusterFinder::FindClusters2 | ( | ) |
Main method of a class.
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(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
| Int_t BmnNdetClusterFinder::FindClusters2 | ( | ) |
Main method of a class.
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.
| Int_t BmnNdetClusterFinder::FindClusters2_2 | ( | ) |
Main method of a class.
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(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, and kIsNotUsed.
| Int_t BmnNdetClusterFinder::FindClusters2_2 | ( | ) |
Main method of a class.
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.
| Int_t BmnNdetClusterFinder::FindClusters3 | ( | Double_t | cut_beta = 0.03 | ) |
Main method of a class.
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 AddCellToCluster(), AddCluster(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), iX, iY, iZ, kIsNotUsed, and kIsUsed.
| Int_t BmnNdetClusterFinder::FindClusters3 | ( | Double_t | cut_beta = 0.03 | ) |
Main method of a class.
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.
| Int_t BmnNdetClusterFinder::FindClusters4 | ( | Double_t | cut_beta = 0.01 | ) |
Second method of searching for the clusters.
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 AddCellToCluster(), AddCluster(), BmnNdetCluster::BetaFirst(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetLayers(), GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), BmnNdetCluster::GetRows(), BmnNdetCluster::GetTime(), BmnNdetCluster::GetX(), BmnNdetCluster::GetY(), BmnNdetCluster::GetZ(), iX, iY, iZ, kIsNotUsed, kIsUsed, and z0.
| Int_t BmnNdetClusterFinder::FindClusters4 | ( | Double_t | cut_beta = 0.01 | ) |
Second method of searching for the clusters.
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. |
| vector< Double_t > BmnNdetClusterFinder::GetBeta | ( | ) |
Definition at line 181 of file BmnNdetClusterFinder.cxx.
| vector< Double_t > BmnNdetClusterFinder::GetBeta | ( | ) |
| vector< Int_t > BmnNdetClusterFinder::GetCells | ( | ) |
Definition at line 145 of file BmnNdetClusterFinder.cxx.
| vector< Int_t > BmnNdetClusterFinder::GetCells | ( | ) |
|
inlinevirtual |
Definition at line 296 of file BmnNdetClusterFinder.h.
|
inlinevirtual |
Definition at line 296 of file BmnNdetClusterFinder.h.
| BmnNdetCluster * BmnNdetClusterFinder::GetCluster | ( | Int_t | i_cluster | ) |
Get BmnNdetCluster object
| i_cluster | index of recognized cluster |
Definition at line 186 of file BmnNdetClusterFinder.cxx.
Referenced by AddCellToCluster(), CalculateNumberOfNeutrons(), MergeClusters(), and SelectNeutrons().
| BmnNdetCluster * BmnNdetClusterFinder::GetCluster | ( | Int_t | i_cluster | ) |
Get BmnNdetCluster object
| i_cluster | index of recognized cluster |
| Int_t BmnNdetClusterFinder::GetClusterStatus | ( | Int_t | i_cluster | ) |
Status of a cluster. 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 kNoCluster.
| Int_t BmnNdetClusterFinder::GetClusterStatus | ( | Int_t | i_cluster | ) |
Status of a cluster. It is assigned to the cluster when applying BmnNdetClusterFinder::SelectNeutrons() method.
| i_cluster | index of BmnNdetCluster object |
| vector< Int_t > BmnNdetClusterFinder::GetColumns | ( | ) |
Definition at line 149 of file BmnNdetClusterFinder.cxx.
| vector< Int_t > BmnNdetClusterFinder::GetColumns | ( | ) |
| vector< Double_t > BmnNdetClusterFinder::GetEdep | ( | ) |
Definition at line 177 of file BmnNdetClusterFinder.cxx.
| vector< Double_t > BmnNdetClusterFinder::GetEdep | ( | ) |
| vector< Int_t > BmnNdetClusterFinder::GetLayers | ( | ) |
Definition at line 157 of file BmnNdetClusterFinder.cxx.
| vector< Int_t > BmnNdetClusterFinder::GetLayers | ( | ) |
| Int_t BmnNdetClusterFinder::GetNCells | ( | ) |
Definition at line 115 of file BmnNdetClusterFinder.cxx.
Referenced by FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), and FindClusters4().
| Int_t BmnNdetClusterFinder::GetNCells | ( | ) |
| Int_t BmnNdetClusterFinder::GetNCells | ( | Double_t | threshold | ) |
Number of cells in event with deposited energy higher than threshold
| threshold | minimal deposited energy in counted cells |
Definition at line 120 of file BmnNdetClusterFinder.cxx.
| Int_t BmnNdetClusterFinder::GetNCells | ( | Double_t | threshold | ) |
Number of cells in event with deposited energy higher than threshold
| threshold | minimal deposited energy in counted cells |
| Int_t BmnNdetClusterFinder::GetNClusters | ( | ) |
Definition at line 110 of file BmnNdetClusterFinder.cxx.
| Int_t BmnNdetClusterFinder::GetNClusters | ( | ) |
| Int_t BmnNdetClusterFinder::GetNColumns | ( | ) |
Definition at line 130 of file BmnNdetClusterFinder.cxx.
Referenced by Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), SelectNeutrons(), and ~BmnNdetClusterFinder().
| Int_t BmnNdetClusterFinder::GetNColumns | ( | ) |
| Int_t BmnNdetClusterFinder::GetNLayers | ( | ) |
Definition at line 140 of file BmnNdetClusterFinder.cxx.
Referenced by Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), and SelectNeutrons().
| Int_t BmnNdetClusterFinder::GetNLayers | ( | ) |
| Int_t BmnNdetClusterFinder::GetNRows | ( | ) |
Definition at line 135 of file BmnNdetClusterFinder.cxx.
Referenced by Clear(), Fill(), FindClusters1(), FindClusters1_2(), FindClusters2(), FindClusters2_2(), FindClusters3(), FindClusters4(), SelectNeutrons(), and ~BmnNdetClusterFinder().
| Int_t BmnNdetClusterFinder::GetNRows | ( | ) |
| vector< Int_t > BmnNdetClusterFinder::GetRows | ( | ) |
Definition at line 153 of file BmnNdetClusterFinder.cxx.
| vector< Int_t > BmnNdetClusterFinder::GetRows | ( | ) |
| vector< Double_t > BmnNdetClusterFinder::GetTime | ( | ) |
Definition at line 173 of file BmnNdetClusterFinder.cxx.
| vector< Double_t > BmnNdetClusterFinder::GetTime | ( | ) |
| vector< Double_t > BmnNdetClusterFinder::GetX | ( | ) |
Definition at line 161 of file BmnNdetClusterFinder.cxx.
| vector< Double_t > BmnNdetClusterFinder::GetX | ( | ) |
| vector< Double_t > BmnNdetClusterFinder::GetY | ( | ) |
Definition at line 165 of file BmnNdetClusterFinder.cxx.
| vector< Double_t > BmnNdetClusterFinder::GetY | ( | ) |
| vector< Double_t > BmnNdetClusterFinder::GetZ | ( | ) |
Definition at line 169 of file BmnNdetClusterFinder.cxx.
| vector< Double_t > BmnNdetClusterFinder::GetZ | ( | ) |
| Int_t BmnNdetClusterFinder::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.
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(), BmnNdetCluster::GetBeta(), GetCluster(), BmnNdetCluster::GetColumns(), BmnNdetCluster::GetEdep(), BmnNdetCluster::GetLayers(), BmnNdetCluster::GetNCells(), BmnNdetCluster::GetRows(), BmnNdetCluster::GetTime(), BmnNdetCluster::GetX(), BmnNdetCluster::GetY(), BmnNdetCluster::GetZ(), max(), and min().
| Int_t BmnNdetClusterFinder::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.
If i_cluster_1==i_cluster_2, cancel merging.
| i_cluster_1 | first cluster |
| i_cluster_2 | second cluster |
| void BmnNdetClusterFinder::Print | ( | ) |
| void BmnNdetClusterFinder::Print | ( | ) |
Print.
| Int_t BmnNdetClusterFinder::SelectNeutrons | ( | Double_t | cut_angle = 45., |
| Int_t | cut_ncells = 3, |
||
| Bool_t | check_border = kFALSE |
||
| ) |
Select neutrons
| 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(), GetCluster(), BmnNdetCluster::GetNCells(), GetNColumns(), GetNLayers(), GetNRows(), kIsNeutron, kNotNeutron, and BmnNdetCluster::StartsOnBorder().
| Int_t BmnNdetClusterFinder::SelectNeutrons | ( | Double_t | cut_angle = 45., |
| Int_t | cut_ncells = 3, |
||
| Bool_t | check_border = kFALSE |
||
| ) |
Select neutrons
| cut_angle | accept, if BmnNdetCluster::AngleToTarget() < cut_angle |
| cut_ncells | accept, if BmnNdetCluster::GetNCells() >= cut_ncells |
| check_border | use BmnNdetCluster::StartsOnBorder() check |
| void BmnNdetClusterFinder::SetClusterStatus | ( | Int_t | i_cluster, |
| eClusterStatus | status | ||
| ) |
Set status of a cluster.
| i_cluster | index of BmnNdetCluster object |
| status | status of a cluster (see eClusterStatus for details) |
Definition at line 200 of file BmnNdetClusterFinder.cxx.
| void BmnNdetClusterFinder::SetClusterStatus | ( | Int_t | i_cluster, |
| eClusterStatus | status | ||
| ) |
Set status of a cluster.
| i_cluster | index of BmnNdetCluster object |
| status | status of a cluster (see eClusterStatus for details) |