Belle II Software development
|
A class to fit tracks in 3D. More...
#include <Fitter3D.h>
Public Member Functions | |
TRGCDCFitter3D (const std::string &name, const std::string &rootFitter3DFile, const TRGCDC &, const std::map< std::string, bool > &flags) | |
Constructor. | |
virtual | ~TRGCDCFitter3D () |
Destructor. | |
void | initialize () |
Initialization. | |
void | terminate () |
Termination. | |
int | doit (std::vector< TRGCDCTrack * > &trackList) |
Does track fitting. | |
int | doitComplex (std::vector< TRGCDCTrack * > &trackList) |
Does track fitting using JSignals. | |
bool | isAxialTrackFull (const TRGCDCTrack &aTrack) |
Checks if axial track has 5 TSs. One per each superlayer. | |
bool | isStereoTrackFull (const TRGCDCTrack &aTrack) |
Checks if stereo track has 4 TSs. One per each superlayer. | |
void | removeImpossibleStereoSuperlayers (std::vector< double > &useStSL) |
Removes TSs that are not possible with track Pt. | |
void | print3DInformation (int iTrack) |
Print's information for debugging 3D. | |
void | saveVhdlAndCoe () |
Functions for saving. | |
void | saveAllSignals () |
Saves all signals for debugging. | |
void | saveIoSignals () |
Saves all I/O signals for debugging. | |
std::string | name (void) const |
Gets name of class. | |
std::string | version (void) const |
Gets version of class. | |
Static Public Member Functions | |
static double | calPhi (TRGCDCSegmentHit const *segmentHit, double eventTime) |
Utility functions. | |
static void | getMCValues (const TRGCDC &m_cdc_in, TRGCDCTrack *aTrack, const std::map< std::string, double > &m_mConstD_in, std::map< std::string, double > &m_mDouble_in, std::map< std::string, std::vector< double > > &m_mVector_in) |
Function for mc debugging. | |
static void | findHitAxialSuperlayers (const TRGCDCTrack &aTrack, std::vector< double > &useAxSL, bool printError) |
Finds which axial superlayers has TSs. useAxSL array indicating hit superlayers. | |
static void | findHitStereoSuperlayers (const TRGCDCTrack &aTrack, std::vector< double > &useStSL, bool printError) |
Finds which stereo superlayers has TSs. useStSL array indicating hit superlayers. | |
static void | selectAxialTSs (const TRGCDCTrack &aTrack, std::vector< int > &bestTSIndex) |
Selects priority TSs when there are multiple candidate TSs for a superlayer. | |
static int | do2DFit (TRGCDCTrack &aTrack, const std::map< std::string, bool > &m_mBool_in, const std::map< std::string, double > &m_mConstD_in, std::map< std::string, std::vector< double > > &m_mConstV_in, std::map< std::string, double > &m_mDouble_in, std::map< std::string, std::vector< double > > &m_mVector_in) |
Does 2D fit. Returns 0 if fit is done successfully. m_mBool should have fIsPrintError, fmcLR, fLRLUT, fmcLR, f2DFit, f2DFitDrift. m_mConstD should have Trg_PI. m_mConstV should have nWires, driftPhi2DError, wirePhi2DError, rr, rr2D. | |
static void | getStereoGeometry (std::map< std::string, std::vector< double > > &stGeometry) |
Get stereo geometry. | |
static void | getStereoXt (std::vector< double > const &stPriorityLayer, std::vector< std::vector< double > > &stXts, bool isSimple=0) |
Get stereo Xt. | |
static void | getConstants (std::map< std::string, double > &mConstD, std::map< std::string, std::vector< double > > &mConstV, bool isXtSimple=0) |
Get constants for firmwareFit. | |
Private Attributes | |
const std::string | m_name |
Name. | |
const TRGCDC & | m_cdc |
CDCTRG. | |
std::map< std::string, double > | m_mDouble |
Map to hold double values for Fitter3D. | |
std::map< std::string, std::vector< double > > | m_mVector |
Map to hold vector values for Fitter3D. | |
std::map< std::string, double > | m_mConstD |
Map to hold constant values for Fitter3D. | |
std::map< std::string, std::vector< double > > | m_mConstV |
Map to hold constant vectcors for Fitter3D. | |
std::map< std::string, bool > | m_mBool |
Map to hold input options. | |
std::map< std::string, TRGCDCJSignal > | m_mSignalStorage |
Map to hold JSignals. | |
std::map< std::string, TRGCDCJLUT * > | m_mLutStorage |
Map to hold JLuts. | |
TRGCDCJSignalData * | m_commonData |
For VHDL code. | |
std::string | m_rootFitter3DFileName |
Members for saving. | |
TFile * | m_fileFitter3D |
Tfile for Fitter3D root file. | |
TTree * | m_treeTrackFitter3D |
TTree for tracks of fitter3D. | |
TTree * | m_treeConstantsFitter3D |
TTree for constants of fitter3D. | |
std::map< std::string, TVectorD * > | m_mTVectorD |
TVectorD map for saving values to root file. | |
std::map< std::string, TClonesArray * > | m_mTClonesArray |
TClonesArray map for saving values to root file. | |
std::map< std::string, std::vector< signed long long > > | m_mSavedSignals |
Array of saved signals. | |
std::map< std::string, std::vector< signed long long > > | m_mSavedIoSignals |
Array of I/O signals. | |
A class to fit tracks in 3D.
Definition at line 40 of file Fitter3D.h.
|
private |
CDCTRG.
Definition at line 126 of file Fitter3D.h.
|
private |
For VHDL code.
Definition at line 144 of file Fitter3D.h.
|
private |
Tfile for Fitter3D root file.
Definition at line 150 of file Fitter3D.h.
|
private |
Map to hold input options.
Definition at line 137 of file Fitter3D.h.
|
private |
Map to hold constant values for Fitter3D.
Definition at line 133 of file Fitter3D.h.
|
private |
Map to hold constant vectcors for Fitter3D.
Definition at line 135 of file Fitter3D.h.
|
private |
Map to hold double values for Fitter3D.
Definition at line 129 of file Fitter3D.h.
|
private |
Map to hold JLuts.
Definition at line 142 of file Fitter3D.h.
|
private |
Array of I/O signals.
Definition at line 165 of file Fitter3D.h.
|
private |
Array of saved signals.
Definition at line 163 of file Fitter3D.h.
|
private |
Map to hold JSignals.
Definition at line 140 of file Fitter3D.h.
|
private |
TClonesArray map for saving values to root file.
Definition at line 161 of file Fitter3D.h.
|
private |
TVectorD map for saving values to root file.
Definition at line 159 of file Fitter3D.h.
|
private |
Map to hold vector values for Fitter3D.
Definition at line 131 of file Fitter3D.h.
|
private |
Name.
Definition at line 123 of file Fitter3D.h.
|
private |
Members for saving.
Definition at line 147 of file Fitter3D.h.
|
private |
TTree for constants of fitter3D.
Definition at line 156 of file Fitter3D.h.
|
private |
TTree for tracks of fitter3D.
Definition at line 153 of file Fitter3D.h.