FEDRA emulsion software from the OPERA Collaboration
|
microtracks linking in one plate More...
#include <EdbLinking.h>
Classes | |
struct | RemoveDoublets |
Public Member Functions | |
void | CloneCouplesTree (const char *ifile, const char *ofile, EdbAffine2D *aff=0, TCut *cut=0) |
void | CorrectAngles (TObjArray &p1, TObjArray &p2) |
void | CorrectShrinkage (EdbPattern &p1, EdbPattern &p2, float dshr) |
void | CorrectShrinkage (float dshr) |
void | CorrectShrinkage (TObjArray &p1, TObjArray &p2, float dshr) |
void | DoubletsFilterOut (TObjArray &p1, TObjArray &p2, bool fillhist=0) |
void | DumpDoubletsTree (EdbAlignmentV &adup, const char *name) |
EdbLinking () | |
Double_t | EstimatePatternArea (EdbPattern &p) |
void | FillCombinationsAtMeanZ (TObjArray &p1, TObjArray &p2) |
void | FullLinking (EdbPattern &p1, EdbPattern &p2) |
void | FullLinking (TObjArray &p1, TObjArray &p2) |
void | GetDoubletsPar (TEnv &env) |
void | GetPar (TEnv &env) |
void | GetPreselectionPar (EdbSEQ &seq, TEnv &env) |
void | Link (EdbPattern &p1, EdbPattern &p2, EdbLayer &l1, EdbLayer &l2, TEnv &env, Double_t area1=-1, Double_t area2=-1) |
void | ProduceReport () |
void | RankCouples (TObjArray &arr1, TObjArray &arr2) |
void | SaveCouplesTree (const char *file=0) |
void | SetApplyCorr (bool corr) |
bool | VerifyShrinkageCorr (int side) |
void | WriteShrinkagePlots () |
virtual | ~EdbLinking () |
![]() | |
void | AddSegCouple (EdbSegP *s1, EdbSegP *s2) |
void | ApplyLimitsOffset (float &xmin1, float &xmax1, float &xmin2, float &xmax2, float offsetMax) |
Int_t | CalcAffFull () |
Int_t | CalcApplyFractMeanDiff () |
Int_t | CalcApplyMeanDiff () |
Float_t | CalcFractMeanDiff (int ivar, float fraction) |
Float_t | CalcMeanDiff (int ivar) |
Float_t | CalcMeanDZ (float tmin=0.1, float tmax=2.) |
Float_t | CalcMeanShr (float tmin=0.1, float tmax=2.) |
Int_t | CalculateAffTXTY (EdbAffine2D &aff) |
Int_t | CalculateAffTXTY (TObjArray &arr1, TObjArray &arr2, EdbAffine2D &aff) |
Int_t | CalculateAffTXTYTurn (TObjArray &arr1, TObjArray &arr2, EdbAffine2D &aff) |
Int_t | CalculateAffXY (EdbAffine2D &aff) |
Int_t | CalculateAffXY (TObjArray &arr1, TObjArray &arr2, EdbAffine2D &aff) |
Int_t | CalculateAffXYTurn (EdbAffine2D &aff) |
Int_t | CalculateAffXYTurn (TObjArray &arr1, TObjArray &arr2, EdbAffine2D &aff) |
void | CloseOutputFile () |
void | Corr2Aff (EdbLayer &layer) |
void | Corr2Aff (EdbSegCorr &corr, EdbLayer &layer) |
void | CorrToCoG (int side, EdbPattern &p) |
functions alpplied to the individual patterns More... | |
void | CorrToCoG (int side, TObjArray &p) |
float | CoupleQuality (EdbSegP &s1, EdbSegP &s2) |
void | DefineGuessCell (float xmin1, float xmax1, float ymin1, float ymax1, float xmin2, float xmax2, float ymin2, float ymax2, int np1, int np2, float binOK) |
Selector functions. More... | |
int | DoubletsFilterOut (int checkview, TH2F *hxy=0, TH2F *htxty=0) |
EdbAlignmentV () | |
void | FillCell (int side, EdbPattern &pat) |
void | FillCell (int side, TObjArray &pat) |
int | FillCombinations () |
int | FillCombinations (float dv[4], float dxMax, float dyMax, bool doFill) |
void | FillGuessCell (EdbPattern &p1, EdbPattern &p2, float binOK=1., float offsetMax=2000.) |
void | FillGuessCell (TObjArray &p1, TObjArray &p2, float binOK=1., float offsetMax=2000.) |
void | FillThetaHist (int side, EdbH2 &htxy) |
Int_t | FindCorrDiff (float dvsame[4], int side=0, int nlim=10) |
Float_t | FindDensityPeak (TArrayF &arr, float fraction) |
Int_t | FindDiff (TObjArray &arr1, TObjArray &arr2, float dvlim[4], float dvfound[4]) |
float | FineCorrPhi (TObjArray &sel1, TObjArray &sel2) |
float | FineCorrZ () |
float | FineCorrZ (TObjArray &sel1, TObjArray &sel2) |
void | HDistance (EdbPattern &p1, EdbPattern &p2, float dxMax, float dyMax) |
void | InitHphi (int n, float min, float max) |
void | InitHshr0 (int n, float min, float max) |
void | InitHshr1 (int n, float min, float max) |
void | InitHx (int n, float min, float max) |
void | InitHy (int n, float min, float max) |
void | InitHz (int n, float min, float max) |
void | InitOutputFile (const char *file="report_al.root", const char *option="RECREATE") |
IO, initialization and finalization functions. More... | |
void | InitPatCellBin (int side, EdbPattern &pat, float binx, float biny) |
void | InitPatCellN (EdbCell2 &cell, EdbPattern &pat, int nx, int ny) |
Bool_t | IsInsideDVsame (EdbSegP &s1, EdbSegP &s2) |
Int_t | Ncoins (float dvlim[4], EdbH2 *hdxy=0, EdbH2 *hdtxty=0, TObjArray *sel1=0, TObjArray *sel2=0) |
Int_t | Ncp () |
Functions applied to the selected parallel arrays. More... | |
int | OptimiseVar1 (int side, int ivar, EdbH2 *hdxy=0, EdbH2 *hdtxy=0) |
void | OptimiseVar2 (int side1, int ivar1, int side2, int ivar2, EdbH2 &h12, EdbH2 *hdxy=0, EdbH2 *hdtxty=0) |
int | SelectBestCouple () |
int | SelectIsolated () |
Bool_t | SideOK (int side) |
char * | StrDVsame () const |
float | TX (int side, EdbSegP &s) |
float | TY (int side, EdbSegP &s) |
Bool_t | ValidCoinsidence (EdbSegP &s1, EdbSegP &s2, float dvlim[4], float dvfound[4]) |
float | Var (int side, EdbSegP &s, int ivar) |
float | Var (int side, int iseg, int ivar) |
float | X (int side, EdbSegP &s) |
Correction parameters handling. More... | |
float | Xmax (int side, EdbPattern &p) |
float | Xmax (int side, TObjArray &p) |
float | Xmin (int side, EdbPattern &p) |
float | Xmin (int side, TObjArray &p) |
float | Y (int side, EdbSegP &s) |
float | Ymax (int side, EdbPattern &p) |
float | Ymax (int side, TObjArray &p) |
float | Ymin (int side, EdbPattern &p) |
float | Ymin (int side, TObjArray &p) |
virtual | ~EdbAlignmentV () |
Public Attributes | |
float | eBinOK |
mean cell occupancy More... | |
float | eChi2Acorr |
acceptance to save into couples tree More... | |
float | eCHI2Pmax |
acceptance to save into couples tree More... | |
EdbScanCond | eCond |
scanning conditions for couples ranking More... | |
int | eCPRankingAlg |
couples ranking algorithm (0-default, 1-likelihood used) More... | |
bool | eDoCorrectAngles |
bool | eDoCorrectShrinkage |
bool | eDoDumpDoubletsTree |
bool | eDoFullLinking |
bool | eDoSaveCouples |
float | eDRfull |
float | eDShr |
range for the shrinkage correction More... | |
float | eDTfull |
acceptance for the full linking More... | |
EdbH2 | eHdxyShr [2] |
service histograms used for the shrinkage correction More... | |
EdbLayer | eL1 |
EdbLayer | eL2 |
layers with the geometry and corrections More... | |
int | eNcorrMin |
min number of segments for the correction calculation More... | |
int | eNshr [2] |
number of coins found for shrinkage correction More... | |
float | eNsigmaEQlnk |
equalization cut for linking More... | |
float | eNsigmaEQshr |
equalization cut for shrinkage More... | |
struct EdbLinking::RemoveDoublets | eRemoveDoublets |
TObjArray | eSegCouples |
segment couples objects to fill couples format tree More... | |
float | eShr0 |
starting value for shrinkage correction search More... | |
![]() | |
EdbSegCorr | eCorr [2] |
corrections for side 1 and 2 (v[7]) - the result of the alignment More... | |
EdbLayer | eCorrL [2] |
corrections in form of affine transformations - the final output More... | |
TH1I * | eDoubletsRate |
can be filled in FillCombinations() More... | |
Float_t | eDVsame [4] |
(dx,dy,dtx,dty) condition for the coinsidence More... | |
EdbH1 | eH [2][7] |
EdbH2 | eHxy |
position 2d histo to be used in OptimiseVar2 More... | |
TFile * | eOutputFile |
EdbCell2 | ePC [2] |
2-d position cells with patterns segments More... | |
TObjArray | eS [2] |
"parallel" arrays with the selected combinations of segments More... | |
Bool_t | eUseAffCorr |
if "true" - use eCorrL for corrections More... | |
Float_t | eXmarg |
Float_t | eYmarg |
margins for the cell definition More... | |
Additional Inherited Members | |
![]() | |
static Int_t | CheckEqualArr (TObjArray &arr1, TObjArray &arr2) |
microtracks linking in one plate
EdbLinking::EdbLinking | ( | ) |
|
inlinevirtual |
void EdbLinking::CloneCouplesTree | ( | const char * | ifile, |
const char * | ofile, | ||
EdbAffine2D * | aff = 0 , |
||
TCut * | cut = 0 |
||
) |
void EdbLinking::CorrectAngles | ( | TObjArray & | p1, |
TObjArray & | p2 | ||
) |
void EdbLinking::CorrectShrinkage | ( | EdbPattern & | p1, |
EdbPattern & | p2, | ||
float | dshr | ||
) |
void EdbLinking::CorrectShrinkage | ( | float | dshr | ) |
void EdbLinking::CorrectShrinkage | ( | TObjArray & | p1, |
TObjArray & | p2, | ||
float | dshr | ||
) |
void EdbLinking::DoubletsFilterOut | ( | TObjArray & | p1, |
TObjArray & | p2, | ||
bool | fillhist = 0 |
||
) |
void EdbLinking::DumpDoubletsTree | ( | EdbAlignmentV & | adup, |
const char * | name | ||
) |
Double_t EdbLinking::EstimatePatternArea | ( | EdbPattern & | p | ) |
void EdbLinking::FillCombinationsAtMeanZ | ( | TObjArray & | p1, |
TObjArray & | p2 | ||
) |
void EdbLinking::FullLinking | ( | EdbPattern & | p1, |
EdbPattern & | p2 | ||
) |
void EdbLinking::FullLinking | ( | TObjArray & | p1, |
TObjArray & | p2 | ||
) |
void EdbLinking::GetDoubletsPar | ( | TEnv & | env | ) |
void EdbLinking::GetPar | ( | TEnv & | env | ) |
void EdbLinking::Link | ( | EdbPattern & | p1, |
EdbPattern & | p2, | ||
EdbLayer & | l1, | ||
EdbLayer & | l2, | ||
TEnv & | env, | ||
Double_t | area1 = -1 , |
||
Double_t | area2 = -1 |
||
) |
void EdbLinking::ProduceReport | ( | ) |
void EdbLinking::RankCouples | ( | TObjArray & | arr1, |
TObjArray & | arr2 | ||
) |
void EdbLinking::SaveCouplesTree | ( | const char * | file = 0 | ) |
|
inline |
bool EdbLinking::VerifyShrinkageCorr | ( | int | side | ) |
void EdbLinking::WriteShrinkagePlots | ( | ) |
float EdbLinking::eBinOK |
mean cell occupancy
float EdbLinking::eChi2Acorr |
acceptance to save into couples tree
float EdbLinking::eCHI2Pmax |
acceptance to save into couples tree
EdbScanCond EdbLinking::eCond |
scanning conditions for couples ranking
int EdbLinking::eCPRankingAlg |
couples ranking algorithm (0-default, 1-likelihood used)
bool EdbLinking::eDoCorrectAngles |
bool EdbLinking::eDoCorrectShrinkage |
bool EdbLinking::eDoDumpDoubletsTree |
bool EdbLinking::eDoFullLinking |
bool EdbLinking::eDoSaveCouples |
float EdbLinking::eDRfull |
float EdbLinking::eDShr |
range for the shrinkage correction
float EdbLinking::eDTfull |
acceptance for the full linking
EdbH2 EdbLinking::eHdxyShr[2] |
service histograms used for the shrinkage correction
EdbLayer EdbLinking::eL1 |
EdbLayer EdbLinking::eL2 |
layers with the geometry and corrections
int EdbLinking::eNcorrMin |
min number of segments for the correction calculation
int EdbLinking::eNshr[2] |
number of coins found for shrinkage correction
float EdbLinking::eNsigmaEQlnk |
equalization cut for linking
float EdbLinking::eNsigmaEQshr |
equalization cut for shrinkage
struct EdbLinking::RemoveDoublets EdbLinking::eRemoveDoublets |
TObjArray EdbLinking::eSegCouples |
segment couples objects to fill couples format tree
float EdbLinking::eShr0 |
starting value for shrinkage correction search