BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
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.ru
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
#ifndef BMNALIGNERTEST_H
15
#define BMNALIGNERTEST_H
16
17
#include "
BmnATestDetector.h
"
18
#include "
BmnATestHit.h
"
19
#include "
BmnATestTrack.h
"
20
#include "
BmnAligner.h
"
21
22
class
BmnAlignerTest
:
public
BmnAligner
<BmnATestHit>
23
{
24
public
:
25
BmnAlignerTest
() =
delete
;
26
BmnAlignerTest
(
const
BmnMeasureModel
* measureModel,
27
const
BmnATestDetector
* modelDetector,
28
Int_t
nTracks,
29
const
char
* constraintsPath =
nullptr
,
30
Int_t
nThreads = 1);
31
virtual
~BmnAlignerTest
();
32
virtual
Bool_t
PrepareData
(
const
char
* tracksPath =
nullptr
)
override
;
33
virtual
Bool_t
IterateAlignment
()
override
;
34
virtual
Double_t
CalculateMSE
(
Bool_t
withResiduals)
override
;
35
virtual
void
ReportResults
()
const override
;
36
virtual
void
Draw
()
override
;
37
38
Bool_t
SaveTracks
(
const
char
* path)
const
;
39
Bool_t
LoadTracks
(
const
char
* path);
40
41
const
BmnATestTrack
&
GetTestTrack
(
Int_t
trackID)
const
noexcept
{
return
fpTestTracks
[trackID]; }
42
const
BmnATestHit
&
GetTestHit
(
Int_t
hitID)
const
noexcept
{
return
fpHits
[hitID]; }
43
44
private
:
45
const
BmnATestDetector
*
fpDetectors
;
46
Byte_t
*
fpTestTracksData
{
nullptr
};
47
BmnATestTrack
*
fpTestTracks
{
nullptr
};
48
};
49
50
#endif
Bool_t
bool Bool_t
Int_t
int Int_t
Byte_t
unsigned char Byte_t
Double_t
double Double_t
BmnATestDetector.h
BmnATestHit.h
BmnATestTrack.h
BmnAligner.h
BmnATestDetector
Definition
BmnATestDetector.h:20
BmnATestHit
Definition
BmnATestHit.h:20
BmnATestTrack
Definition
BmnATestTrack.h:29
BmnAlignerTest::ReportResults
virtual void ReportResults() const override
Definition
BmnAlignerTest.cxx:314
BmnAlignerTest::fpTestTracks
BmnATestTrack * fpTestTracks
Definition
BmnAlignerTest.h:47
BmnAlignerTest::CalculateMSE
virtual Double_t CalculateMSE(Bool_t withResiduals) override
Definition
BmnAlignerTest.cxx:328
BmnAlignerTest::PrepareData
virtual Bool_t PrepareData(const char *tracksPath=nullptr) override
Definition
BmnAlignerTest.cxx:68
BmnAlignerTest::IterateAlignment
virtual Bool_t IterateAlignment() override
Definition
BmnAlignerTest.cxx:158
BmnAlignerTest::~BmnAlignerTest
virtual ~BmnAlignerTest()
Definition
BmnAlignerTest.cxx:61
BmnAlignerTest::fpDetectors
const BmnATestDetector * fpDetectors
Definition
BmnAlignerTest.h:45
BmnAlignerTest::Draw
virtual void Draw() override
Definition
BmnAlignerTest.cxx:231
BmnAlignerTest::BmnAlignerTest
BmnAlignerTest()=delete
BmnAlignerTest::GetTestHit
const BmnATestHit & GetTestHit(Int_t hitID) const noexcept
Definition
BmnAlignerTest.h:42
BmnAlignerTest::LoadTracks
Bool_t LoadTracks(const char *path)
Definition
BmnAlignerTest.cxx:202
BmnAlignerTest::fpTestTracksData
Byte_t * fpTestTracksData
Definition
BmnAlignerTest.h:46
BmnAlignerTest::SaveTracks
Bool_t SaveTracks(const char *path) const
Definition
BmnAlignerTest.cxx:178
BmnAlignerTest::GetTestTrack
const BmnATestTrack & GetTestTrack(Int_t trackID) const noexcept
Definition
BmnAlignerTest.h:41
BmnAligner< BmnATestHit >::fpHits
BmnATestHit * fpHits
Definition
BmnAligner.h:117
BmnAligner< BmnATestHit >::BmnAligner
BmnAligner(const BmnMeasureModel *measureModel, const BmnDetectorModel *modelDetector, const char *constraintsPath=nullptr, Int_t nThreads=1)
BmnMeasureModel
Definition
BmnMeasureModel.h:36
align_new
src
BmnAlignerTest.h
Generated on
for BmnRoot by
1.17.0