BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
checkBmnTrackExtrapolator.C
Go to the documentation of this file.
2{
3 gROOT->LoadMacro("$VMCWORKDIR/macro/run/bmnloadlibs.C");
4 bmnloadlibs(); // load libraries
5
6 Double_t fieldScale = 1.;
7 BmnFieldMap* magField = new BmnNewFieldMap("field_sp41v3_ascii_Extrap.dat");
8 magField->SetScale(fieldScale);
9 magField->Init();
10 magField->Print();
11
12 FairRunAna* fRun = new FairRunAna();
13 fRun->SetField(magField);
14
15 BmnTrackExtrapolator* extrapolator = new BmnTrackExtrapolator();
16 const FairTrackParam fairTrackParam = FairTrackParam();
17 fairTrackParam.SetX(0);
18 fairTrackParam.SetY(0);
19 fairTrackParam.SetZ(0);
20 fairTrackParam.SetTx(0);
21 fairTrackParam.SetTy(0);
22 fairTrackParam.SetQp((Double_t)(1.0 / 9.78));
23
24 FairTrackParam fairTrackParamRKTrans = FairTrackParam(fairTrackParam);
25 extrapolator->RKTrans(&fairTrackParamRKTrans, 542.0);
26 cout << "RKTrans" << endl;
27 cout << "x_out = " << fairTrackParamRKTrans.GetX() << ", y_out = " << fairTrackParamRKTrans.GetY() << endl;
28 cout << "tx_out = " << fairTrackParamRKTrans.GetTx() << ", ty_out = " << fairTrackParamRKTrans.GetTy() << endl;
29 cout << "1/Qp = " << 1 / fairTrackParamRKTrans.GetQp() << endl;
30
31 FairTrackParam fairTrackParamRK5Order = FairTrackParam(fairTrackParam);
32 extrapolator->RK5Order(&fairTrackParamRK5Order, 542.0);
33 cout << "RK5Order" << endl;
34 cout << "x_out = " << fairTrackParamRK5Order.GetX() << ", y_out = " << fairTrackParamRK5Order.GetY() << endl;
35 cout << "tx_out = " << fairTrackParamRK5Order.GetTx() << ", ty_out = " << fairTrackParamRK5Order.GetTy() << endl;
36 cout << "1/Qp = " << 1 / fairTrackParamRK5Order.GetQp() << endl;
37
38 FairTrackParam fairTrackParamRK5Clip = FairTrackParam(fairTrackParam);
39 extrapolator->RK5Clip(&fairTrackParamRK5Clip, 542.0);
40 cout << "RK5Clip" << endl;
41 cout << "x_out = " << fairTrackParamRK5Clip.GetX() << ", y_out = " << fairTrackParamRK5Clip.GetY() << endl;
42 cout << "tx_out = " << fairTrackParamRK5Clip.GetTx() << ", ty_out = " << fairTrackParamRK5Clip.GetTy() << endl;
43 cout << "1/Qp = " << 1 / fairTrackParamRK5Clip.GetQp() << endl;
44
45 delete magField;
46 delete extrapolator;
47}
double Double_t
#define gROOT
void SetScale(Double_t factor)
Set a global field scaling factor.
Definition BmnFieldMap.h:55
virtual void Init()
virtual void Print(Option_t *) const
Screen output.
Field Map does not have any symmetries w.r.t coordinate axises.
void checkBmnTrackExtrapolator()