8 #include "Fitter/PndVtxFitterParticle.h"
14 #include "TDatabasePDG.h"
21 static PndVtxFitterParticle covTool;
52 TVector3 ex1(0.,0.,-50.);
53 TVector3 ex2(0.,0.,100.);
60 std::cout <<
"-W- PndPidCorrelator::GetTrackInfo :: Failed backward propagation" << std::endl;
72 for(
unsigned iq=1; iq<15; iq++)
84 TVector3 dj = di.Orthogonal();
85 TVector3 dk = di.Cross(dj);
94 Double_t globalCov[6][6];
99 for (ii=0;ii<6;ii++)
for(jj=0;jj<6;jj++) err[ii][jj]=globalCov[ii][jj];
105 lv.SetVectM(momentum, TDatabasePDG::Instance()->GetParticle(
fPidHyp)->Mass());
106 Float_t energy = lv.E();
108 TMatrixD mat = covTool.GetConverted7(covTool.GetFitError(lv, err));
121 Double_t Q=fRes->
GetQ();
123 Double_t pnt[3], Bf[3];
130 Double_t qBc = -0.000299792458*B*Q;
132 Double_t icLs = icL*icL;
133 Double_t helixparams[5];
135 helixparams[0]=fRes->
GetY_sc() ;
140 helixparams[3]=fRes->
GetZ_sc()*icL;
143 Double_t fairhelixcov[15];
144 fRes->
GetCov(fairhelixcov);
145 Double_t rhohelixcov[15];
147 rhohelixcov[0] = fairhelixcov[12];
148 rhohelixcov[1] = fairhelixcov[10];
149 rhohelixcov[2] = fairhelixcov[3] * qBc * icL;
150 rhohelixcov[3] = fairhelixcov[13] * icL;
151 rhohelixcov[4] = fairhelixcov[7] * icLs;
152 rhohelixcov[5] = fairhelixcov[9];
153 rhohelixcov[6] = fairhelixcov[2] * qBc * icL;
154 rhohelixcov[7] = fairhelixcov[11] * icL;
155 rhohelixcov[8] = fairhelixcov[6] * icLs;
156 rhohelixcov[9] = fairhelixcov[0] * qBc * qBc * icLs;
157 rhohelixcov[10] = fairhelixcov[4] * qBc * icLs;
158 rhohelixcov[11] = fairhelixcov[1] * qBc * icL * icLs;
159 rhohelixcov[12] = fairhelixcov[14] * icLs;
160 rhohelixcov[13] = fairhelixcov[8] * icL * icLs;
161 rhohelixcov[14] = fairhelixcov[5] * icLs * icLs;
167 std::cout << std::endl <<
"-E- PndPidCorrelator::GetTrackInfo :: NO GEANE - no propagation available" << std::endl;