|
BmnRoot
|
#include <BmnAligner.h>
Public Member Functions | |
| BmnAligner (const BmnMeasureModel *measureModel, const BmnDetectorModel *modelDetector, const char *constraintsPath=nullptr, Int_t nThreads=1) | |
| BmnAligner (const BmnMeasureModel *measureModel, const BmnDetectorModel *modelDetector, const char *filesListPath, const char *constraintsPath=nullptr, Int_t nThreads=1) | |
| virtual | ~BmnAligner () |
| Bool_t | Align (Bool_t fixEvery=kFALSE) |
| virtual Bool_t | PrepareData (const char *tracksPath=nullptr) |
| Bool_t | SaveSolution (const char *jsonPath, Bool_t withAlpha=kFALSE) |
| Bool_t | LoadSolution (const char *jsonPath, Bool_t withAlpha=kTRUE, Bool_t withMSE=kTRUE) |
| virtual void | Draw () |
| Bool_t | Initialized () const noexcept |
| Int_t | TotalTracks () const noexcept |
| Int_t | TotalHits () const noexcept |
| Double_t | OmegaScaleFactor () const noexcept |
| BmnAlignResult * | GetCurrentResult () const noexcept |
| BmnAlignResult * | GetResult (Bool_t last=kTRUE) const noexcept |
| BmnAligner (const BmnMeasureModel *measureModel, const BmnDetectorModel *modelDetector, const char *constraintsPath=nullptr, Int_t nThreads=1) | |
| BmnAligner (const BmnMeasureModel *measureModel, const BmnDetectorModel *modelDetector, const char *filesListPath, const char *constraintsPath=nullptr, Int_t nThreads=1) | |
| virtual | ~BmnAligner () |
| Bool_t | Align (Bool_t fixEvery=kFALSE) |
| virtual Bool_t | PrepareData (const char *tracksPath=nullptr) |
| Bool_t | SaveSolution (const char *jsonPath, Bool_t withAlpha=kFALSE) |
| Bool_t | LoadSolution (const char *jsonPath, Bool_t withAlpha=kTRUE, Bool_t withMSE=kTRUE) |
| virtual void | Draw () |
| Bool_t | Initialized () const noexcept |
| Int_t | TotalTracks () const noexcept |
| Int_t | TotalHits () const noexcept |
| Double_t | OmegaScaleFactor () const noexcept |
| BmnAlignResult * | GetCurrentResult () const noexcept |
| BmnAlignResult * | GetResult (Bool_t last=kTRUE) const noexcept |
Protected Types | |
| typedef std::array< Bool_t, BMN_MODULE_COUNT > | DetectorFlags_t |
| typedef std::array< Int_t, BMN_MODULE_COUNT > | DetectorHitCount_t |
| typedef ROOT::Math::BrentMinimizer1D | Minimizer1D_t |
| typedef std::array< Bool_t, BMN_MODULE_COUNT > | DetectorFlags_t |
| typedef std::array< Int_t, BMN_MODULE_COUNT > | DetectorHitCount_t |
| typedef ROOT::Math::BrentMinimizer1D | Minimizer1D_t |
Protected Member Functions | |
| virtual Bool_t | IterateAlignment () |
| Double_t | CalculateMSE (const SVectGLT &solution) |
| virtual Double_t | CalculateMSE (Bool_t withResiduals) |
| Bool_t | SolveGlobal (const TMatrixD &mCL, const TVectorD &vBL) |
| virtual void | ReportResults () const |
| Bool_t | LoadConstraints () |
| void | InitIterators () |
| void | PrepareDrawing () |
| void | DrawResiduals () |
| void | AddBlankSolution () |
| void | StoreZeroSolution (const std::vector< SVectLC > &AlphaZero) |
| void | MarkTime (TStopwatch &timer) |
| void | DoneInTime (TStopwatch &timer, const char *stage) |
| Int_t | GetThreadCount () const noexcept |
| BmnSimpleProgressBar & | GetProgressBar () noexcept |
| virtual Bool_t | IterateAlignment () |
| Double_t | CalculateMSE (const SVectGLT &solution) |
| virtual Double_t | CalculateMSE (Bool_t withResiduals) |
| Bool_t | SolveGlobal (const TMatrixD &mCL, const TVectorD &vBL) |
| virtual void | ReportResults () const |
| Bool_t | LoadConstraints () |
| void | InitIterators () |
| void | PrepareDrawing () |
| void | DrawResiduals () |
| void | AddBlankSolution () |
| void | StoreZeroSolution (const std::vector< SVectLC > &AlphaZero) |
| void | MarkTime (TStopwatch &timer) |
| void | DoneInTime (TStopwatch &timer, const char *stage) |
| Int_t | GetThreadCount () const noexcept |
| BmnSimpleProgressBar & | GetProgressBar () noexcept |
Definition at line 36 of file BmnAligner.h.
|
protected |
Definition at line 91 of file BmnAligner.h.
|
protected |
Definition at line 91 of file BmnAligner.h.
|
protected |
Definition at line 92 of file BmnAligner.h.
|
protected |
Definition at line 92 of file BmnAligner.h.
|
protected |
Definition at line 93 of file BmnAligner.h.
|
protected |
Definition at line 93 of file BmnAligner.h.
|
inline |
Definition at line 163 of file BmnAligner.h.
References BMN_BRENT_GRID_SIZE, BmnAligner< HitType >::fBrent, and BmnAligner< HitType >::fDetectorActive.
| BmnAligner< HitType >::BmnAligner | ( | const BmnMeasureModel * | measureModel, |
| const BmnDetectorModel * | modelDetector, | ||
| const char * | filesListPath, | ||
| const char * | constraintsPath = nullptr, |
||
| Int_t | nThreads = 1 |
||
| ) |
Definition at line 34 of file BmnAligner.cxx.
|
virtual |
Definition at line 85 of file BmnAligner.cxx.
| BmnAligner< HitType >::BmnAligner | ( | const BmnMeasureModel * | measureModel, |
| const BmnDetectorModel * | modelDetector, | ||
| const char * | constraintsPath = nullptr, |
||
| Int_t | nThreads = 1 |
||
| ) |
| BmnAligner< HitType >::BmnAligner | ( | const BmnMeasureModel * | measureModel, |
| const BmnDetectorModel * | modelDetector, | ||
| const char * | filesListPath, | ||
| const char * | constraintsPath = nullptr, |
||
| Int_t | nThreads = 1 |
||
| ) |
|
virtual |
|
inlineprotected |
Definition at line 179 of file BmnAligner.h.
|
inlineprotected |
| Bool_t BmnAligner< HitType >::Align | ( | Bool_t | fixEvery = kFALSE | ) |
Definition at line 433 of file BmnAligner.cxx.
References BMN_MAX_REGULAR_RETRY, BMN_MIN_ACTIVE_DETECTORS, BMN_MIN_HITS_PORTION, BMN_MIN_REGULAR_ITERS, BMN_MIN_REL_PROGRESS, BMN_MODULE_COUNT, BMN_REL_PROGRESS_GOOD, and i.
| Bool_t BmnAligner< HitType >::Align | ( | Bool_t | fixEvery = kFALSE | ) |
|
protectedvirtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
Definition at line 998 of file BmnAligner.cxx.
References _BMN_ALIGNER_RUN_THREADS.
|
protectedvirtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
|
protected |
Definition at line 984 of file BmnAligner.cxx.
|
protected |
|
protected |
Definition at line 1161 of file BmnAligner.cxx.
|
protected |
|
virtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
Definition at line 1227 of file BmnAligner.cxx.
References BMN_DRAW_TRACKS_CNT, iX0, iX1, iY0, and iY1.
|
virtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
|
protected |
Definition at line 1196 of file BmnAligner.cxx.
|
protected |
|
inlinenoexcept |
Definition at line 63 of file BmnAligner.h.
References BmnAligner< HitType >::fpResultCurrent.
Referenced by BmnATestTrack::AddMSE().
|
inlinenoexcept |
Definition at line 63 of file BmnAligner.h.
References BmnAligner< HitType >::fpResultCurrent.
|
inlineprotectednoexcept |
Definition at line 142 of file BmnAligner.h.
References BmnAligner< HitType >::fProgressBar.
|
inlineprotectednoexcept |
Definition at line 142 of file BmnAligner.h.
References BmnAligner< HitType >::fProgressBar.
|
inlinenoexcept |
Definition at line 64 of file BmnAligner.h.
References BmnAligner< HitType >::fIterationResults.
|
inlinenoexcept |
Definition at line 64 of file BmnAligner.h.
References BmnAligner< HitType >::fIterationResults.
|
inlineprotectednoexcept |
Definition at line 141 of file BmnAligner.h.
|
inlineprotectednoexcept |
Definition at line 141 of file BmnAligner.h.
|
inlinenoexcept |
Definition at line 59 of file BmnAligner.h.
References BmnAligner< HitType >::fInitialized.
|
inlinenoexcept |
Definition at line 59 of file BmnAligner.h.
References BmnAligner< HitType >::fInitialized.
|
protected |
Definition at line 1123 of file BmnAligner.cxx.
References BMN_MIN_TRACKS_PER_THREAD, and i.
|
protected |
|
protectedvirtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
Definition at line 537 of file BmnAligner.cxx.
References _BMN_ALIGNER_RUN_THREADS, BMN_1D_STEP_TOLERANCE, BMN_BRENT_GRID_SIZE, BMN_GLOBAL_PARAMS_PD, BMN_LM_ITERATIONS_MAX, BMN_LM_ITERATIONS_MIN, BMN_LM_MULT_STEP, BMN_REL_PROGRESS_GOOD, and i.
Referenced by BmnAlignerTest::IterateAlignment().
|
protectedvirtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
|
protected |
Definition at line 214 of file BmnAligner.cxx.
References i, nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType >::is_array(), and nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType >::size().
|
protected |
| Bool_t BmnAligner< HitType >::LoadSolution | ( | const char * | jsonPath, |
| Bool_t | withAlpha = kTRUE, |
||
| Bool_t | withMSE = kTRUE |
||
| ) |
Definition at line 269 of file BmnAligner.cxx.
References BMN_CORRECTIONS, BMN_GLOBAL_PARAMS_PD, BMN_MODULE_COUNT, nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType >::contains(), nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType >::get(), i, nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType >::is_array(), and nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType >::size().
Referenced by BmnAlignerApply::Init().
| Bool_t BmnAligner< HitType >::LoadSolution | ( | const char * | jsonPath, |
| Bool_t | withAlpha = kTRUE, |
||
| Bool_t | withMSE = kTRUE |
||
| ) |
|
inlineprotected |
Definition at line 195 of file BmnAligner.h.
|
inlineprotected |
|
inlinenoexcept |
Definition at line 62 of file BmnAligner.h.
References BmnAligner< HitType >::fOmegaScaleFactor.
Referenced by BmnATestTrack::AddMSE().
|
inlinenoexcept |
Definition at line 62 of file BmnAligner.h.
References BmnAligner< HitType >::fOmegaScaleFactor.
|
virtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
Definition at line 104 of file BmnAligner.cxx.
References BMN_GLOBAL_PARAMS_PD, BMN_MSE_SLOW_THRESHOLD, CbmStsHit::GetSystemId(), and i.
|
virtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
|
protected |
Definition at line 1170 of file BmnAligner.cxx.
|
protected |
|
protectedvirtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
Definition at line 1088 of file BmnAligner.cxx.
References BmnAlignResult::SVDSig().
Referenced by BmnAlignerTest::ReportResults().
|
protectedvirtual |
Reimplemented in BmnAlignerTest, and BmnAlignerTest.
| Bool_t BmnAligner< HitType >::SaveSolution | ( | const char * | jsonPath, |
| Bool_t | withAlpha = kFALSE |
||
| ) |
Definition at line 373 of file BmnAligner.cxx.
References BMN_CORRECTIONS, BMN_GLOBAL_PARAMS_PD, BMN_LOCAL_PARAMS_PT, BMN_MIN_HITS_PER_TRACK, BMN_MODULE_COUNT, i, and nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType >::push_back().
| Bool_t BmnAligner< HitType >::SaveSolution | ( | const char * | jsonPath, |
| Bool_t | withAlpha = kFALSE |
||
| ) |
|
protected |
Definition at line 724 of file BmnAligner.cxx.
References BMN_1D_STEP_TOLERANCE, BMN_GLOBAL_PARAMS_PD, BMN_MODULE_COUNT, and i.
|
protected |
|
inlineprotected |
Definition at line 187 of file BmnAligner.h.
|
inlineprotected |
|
inlinenoexcept |
Definition at line 61 of file BmnAligner.h.
References BmnAligner< HitType >::fTotalHits.
|
inlinenoexcept |
Definition at line 61 of file BmnAligner.h.
References BmnAligner< HitType >::fTotalHits.
|
inlinenoexcept |
Definition at line 60 of file BmnAligner.h.
References BmnAligner< HitType >::fTotalTracks.
|
inlinenoexcept |
Definition at line 60 of file BmnAligner.h.
References BmnAligner< HitType >::fTotalTracks.
|
protected |
Definition at line 101 of file BmnAligner.h.
|
protected |
Definition at line 106 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::BmnAligner().
|
protected |
Definition at line 111 of file BmnAligner.h.
|
protected |
Definition at line 112 of file BmnAligner.h.
|
protected |
Definition at line 102 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::BmnAligner().
|
protected |
Definition at line 105 of file BmnAligner.h.
|
protected |
Definition at line 96 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::Initialized().
|
protected |
Definition at line 101 of file BmnAligner.h.
|
protected |
Definition at line 123 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::GetResult().
|
protected |
Definition at line 128 of file BmnAligner.h.
|
protected |
Definition at line 97 of file BmnAligner.h.
|
protected |
Definition at line 96 of file BmnAligner.h.
|
protected |
Definition at line 97 of file BmnAligner.h.
|
protected |
Definition at line 100 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::OmegaScaleFactor().
|
protected |
Definition at line 110 of file BmnAligner.h.
|
protected |
Definition at line 109 of file BmnAligner.h.
Referenced by BmnAlignerApply::Exec().
|
protected |
Definition at line 119 of file BmnAligner.h.
|
protected |
Definition at line 117 of file BmnAligner.h.
|
protected |
Definition at line 118 of file BmnAligner.h.
|
protected |
Definition at line 116 of file BmnAligner.h.
|
protected |
Definition at line 108 of file BmnAligner.h.
Referenced by BmnAlignerApply::Exec().
|
protected |
Definition at line 127 of file BmnAligner.h.
|
protected |
Definition at line 127 of file BmnAligner.h.
|
protected |
Definition at line 127 of file BmnAligner.h.
|
protected |
Definition at line 127 of file BmnAligner.h.
|
protected |
Definition at line 127 of file BmnAligner.h.
|
protected |
Definition at line 115 of file BmnAligner.h.
|
protected |
Definition at line 122 of file BmnAligner.h.
Referenced by BmnAlignerApply::Exec(), and BmnAligner< HitType >::GetCurrentResult().
|
protected |
Definition at line 121 of file BmnAligner.h.
|
protected |
Definition at line 95 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::GetProgressBar().
|
protected |
Definition at line 114 of file BmnAligner.h.
|
protected |
Definition at line 103 of file BmnAligner.h.
|
protected |
Definition at line 101 of file BmnAligner.h.
|
protected |
Definition at line 98 of file BmnAligner.h.
|
protected |
Definition at line 104 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::TotalHits().
|
protected |
Definition at line 98 of file BmnAligner.h.
|
protected |
Definition at line 104 of file BmnAligner.h.
Referenced by BmnAligner< HitType >::TotalTracks().
|
protected |
Definition at line 104 of file BmnAligner.h.