11#ifndef BMN_ALIGN_DEFINES_H
12#define BMN_ALIGN_DEFINES_H
14#include "Math/SMatrix.h"
15#include "Math/SVector.h"
16#include "RtypesCore.h"
19#define BMN_MODULE_COUNT 22
20#define BMN_CORRECTIONS {"dX", "dY", "dZ"}
21#define BMN_GLOBAL_PARAMS_PD 3
22#define BMN_LOCAL_PARAMS_PT 4
23#define BMN_MIN_HITS_PER_TRACK 5
24#define BMN_MAX_CHI2_PER_NDF 5.0
25#define BMN_MIN_HITS_PORTION 0.1
30#define BMN_SVD_LOW 10.0
31#define BMN_ALMOST_ZERO 1.0E-12
32#define BMN_CLOSE_TO_ZERO 1.0E-6
33#define BMN_DRAW_TRACKS_CNT 20
35#define BMN_MAX_HIT_RAM_SIZE 8589934592
36#define BMN_MIN_TRACKS_PER_THREAD 1000
37#define BMN_TRACKS_READ_PORTION 100000
38#define BMN_THREAD_TRACKS_TICK 40000
41#define BMN_MIN_ACTIVE_DETECTORS 1
42#define BMN_MIN_REL_PROGRESS 0.001
43#define BMN_REL_PROGRESS_GOOD 0.05
44#define BMN_MIN_REGULAR_ITERS 3
45#define BMN_MAX_REGULAR_RETRY 10
46#define BMN_1D_STEP_TOLERANCE 0.01
47#define BMN_BRENT_GRID_SIZE 4
48#define BMN_LM_ITERATIONS_MIN 3
49#define BMN_LM_ITERATIONS_MAX \
52#define BMN_LM_MULT_STEP 10.0
55#define BMN_TEST_MODULE_COUNT 16
56#define BMN_TEST_AVERAGE_DX 0.0208
57#define BMN_TEST_AVERAGE_DY 0.1234
58#define BMN_TEST_ALPHA1_SIGMA 1.0
59#define BMN_TEST_ALPHA2_MIN -1.0
60#define BMN_TEST_ALPHA2_MAX 1.0
61#define BMN_ALIGN_PARAM_TOLERENCE 0.1
63#define BMN_RESIDUALS_BINS 201
64#define BMN_RESIDUALS_RANGE_X 0.2
65#define BMN_RESIDUALS_RANGE_Y 1.0
66#define BMN_RESIDUALS_MAX 1000.0
70typedef ROOT::Math::SVector<Double_t, 2>
SVect2;
71typedef ROOT::Math::SVector<Double_t, 3>
SVect3;
72typedef ROOT::Math::SVector<Double_t, BMN_LOCAL_PARAMS_PT>
SVectLC;
73typedef ROOT::Math::SVector<Double_t, BMN_GLOBAL_PARAMS_PD>
SVectGL;
74typedef ROOT::Math::SVector<Double_t, BMN_GLPARAMS_TOTAL>
SVectGLT;
76typedef ROOT::Math::SMatrix<Double_t, 3, 3>
SMatr3x3;
77typedef ROOT::Math::SMatrix<Double_t, BMN_LOCAL_PARAMS_PT, BMN_LOCAL_PARAMS_PT>
SMatrLC;
78typedef ROOT::Math::SMatrix<Double_t, BMN_GLOBAL_PARAMS_PD, BMN_GLOBAL_PARAMS_PD>
SMatrGL;
79typedef ROOT::Math::SMatrix<Double_t, BMN_GLPARAMS_TOTAL, BMN_GLPARAMS_TOTAL>
SMatrC;
80typedef ROOT::Math::SMatrix<Double_t, BMN_GLPARAMS_TOTAL, BMN_LOCAL_PARAMS_PT>
SMatrG;
81typedef ROOT::Math::SMatrix<Double_t, BMN_GLOBAL_PARAMS_PD, BMN_LOCAL_PARAMS_PT>
SMatrGP;
101static TRandom3 BMN_RND{0};
ROOT::Math::SVector< Double_t, 2 > SVect2
ROOT::Math::SMatrix< Double_t, BMN_GLPARAMS_TOTAL, BMN_GLPARAMS_TOTAL > SMatrC
ROOT::Math::SMatrix< Double_t, BMN_GLOBAL_PARAMS_PD, BMN_GLOBAL_PARAMS_PD > SMatrGL
ROOT::Math::SVector< Double_t, BMN_GLPARAMS_TOTAL > SVectGLT
ROOT::Math::SMatrix< Double_t, BMN_GLPARAMS_TOTAL, BMN_LOCAL_PARAMS_PT > SMatrG
ROOT::Math::SMatrix< Double_t, BMN_GLOBAL_PARAMS_PD, BMN_LOCAL_PARAMS_PT > SMatrGP
ROOT::Math::SMatrix< Double_t, BMN_LOCAL_PARAMS_PT, BMN_LOCAL_PARAMS_PT > SMatrLC
ROOT::Math::SVector< Double_t, BMN_GLOBAL_PARAMS_PD > SVectGL
ROOT::Math::SMatrix< Double_t, 3, 3 > SMatr3x3
ROOT::Math::SVector< Double_t, 3 > SVect3
ROOT::Math::SVector< Double_t, BMN_LOCAL_PARAMS_PT > SVectLC
#define BMN_GLOBAL_PARAMS_PD