BmnRoot 26.10.0-210-gc52d34b0
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnAlignerTest.h
Go to the documentation of this file.
1/*
2 BM@N alignment routine
3 BM@N experiment at NICA complex, JINR, 2025
4
5 Department: Math & Soft Group of HEP lab
6 Author: Igor Polev, polev@jinr.int
7
8 BmnAlignerTest class declaration.
9 Implements alignment algorithm test with predefined task with known solution.
10 Each detector is defined by z-coordinate and is considered to be infinite plane.
11 Set of random linear tracks are generated.
12*/
13
14/*
15 === DEPRECATION NOTICE =========================================
16 Due to complex changes in BmnAligner, this class requires rework
17 ================================================================
18*/
19
20#ifndef BMNALIGNERTEST_H
21#define BMNALIGNERTEST_H
22
23#include "BmnATestDetector.h"
24#include "BmnATestHit.h"
25#include "BmnATestTrack.h"
26#include "BmnAligner.h"
27
28class BmnAlignerTest : public BmnAligner<BmnATestHit>
29{
30 public:
31 BmnAlignerTest() = delete;
32 BmnAlignerTest(const BmnMeasureModel* measureModel,
33 const BmnATestDetector* modelDetector,
34 Int_t nTracks,
35 const char* constraintsPath = nullptr,
36 Int_t nThreads = 1);
37 virtual ~BmnAlignerTest();
38 virtual Bool_t PrepareData(const char* tracksPath = nullptr) override;
39 virtual Bool_t IterateAlignment() override;
40 virtual Double_t CalculateMSE(Bool_t withResiduals) override;
41 virtual void ReportResults() const override;
42 virtual void Draw() override;
43
44 Bool_t SaveTracks(const char* path) const;
45 Bool_t LoadTracks(const char* path);
46
47 const BmnATestTrack& GetTestTrack(Int_t trackID) const noexcept { return fpTestTracks[trackID]; }
48 const BmnATestHit& GetTestHit(Int_t hitID) const noexcept { return fpHits[hitID]; }
49
50 private:
54};
55
56#endif
bool Bool_t
int Int_t
unsigned char Byte_t
double Double_t
BmnATestTrack * fpTestTracks
virtual void ReportResults() const override
virtual Double_t CalculateMSE(Bool_t withResiduals) override
virtual Bool_t PrepareData(const char *tracksPath=nullptr) override
virtual Bool_t IterateAlignment() override
virtual ~BmnAlignerTest()
virtual void Draw() override
BmnAlignerTest()=delete
const BmnATestDetector * fpDetectors
const BmnATestHit & GetTestHit(Int_t hitID) const noexcept
Bool_t LoadTracks(const char *path)
Byte_t * fpTestTracksData
Bool_t SaveTracks(const char *path) const
const BmnATestTrack & GetTestTrack(Int_t trackID) const noexcept
BmnAligner(const BmnMeasureModel *measureModel, BmnDetectorModel *modelDetector, const char *filesListPath, const char *constraintsPath=nullptr, const char *presigmaPath=nullptr, Int_t nThreads=1, Bool_t withProgressBar=kTRUE)