|
ATLAS Offline Software
|
Go to the documentation of this file.
17 if((
p->cov()==0)||(
p->cov()->size()==0))
29 for(j=
i;j<5;j++)
a[
i][j]=
a[j][
i]=(*
p->cov())[
idx++];
39 pP->
m_cov[0] =(
float)sqrt( (*
p->cov())[0] > 0 ? (*
p->cov())[0] : 0 );
40 pP->
m_cov[2] =(
float)sqrt( (*
p->cov())[5] > 0 ? (*
p->cov())[5] : 0 );
41 pP->
m_cov[5] =(
float)sqrt( (*
p->cov())[9] > 0 ? (*
p->cov())[9] : 0 );
42 pP->
m_cov[9] =(
float)sqrt( (*
p->cov())[12] > 0 ? (*
p->cov())[12] : 0 );
43 pP->
m_cov[14]=(
float)sqrt( (*
p->cov())[14] > 0 ? (*
p->cov())[14] : 0 );
48 std::unique_ptr<std::vector<double> >
52 int i{0},j{0},
k{0},
idx{0};
53 float L[5][5],
LT[5][5];
59 memset(&L[0][0],0,
sizeof(L));memset(&
LT[0][0],0,
sizeof(
LT));
61 for(
i=0;
i<5;
i++)
for(j=0;j<=
i;j++)
66 auto pV = std::make_unique<std::vector<double> >();
79 C+=(
long double)L[
i][
k]*
LT[
k][j];
133 ea0 = sqrt((*
cov)[0]);
134 ephi0 = sqrt((*
cov)[5]);
135 ez0 = sqrt((*
cov)[9]);
136 eeta = sqrt((*
cov)[12]);
137 epT = sqrt((*
cov)[14]);
145 ea0, ephi0, ez0, eeta, epT,
void surfaceCoordinate(double c)
Setter: surface reference coordinate for non-perigee surfaces.
virtual void persToTrans(const TrigInDetTrackFitPar_p3 *persObj, TrigInDetTrackFitPar *transObj, MsgStream &log)
void eta(const double eta)
Setter: pseudorapidity.
void z0(const double z0)
Setter: longitudinal impact parameter.
std::unique_ptr< std::vector< double > > restoreCovariance(const TrigInDetTrackFitPar_p3 *)
void surfaceType(TrigSurfaceType s)
Setter: surface type PERIGEE=0, BARREL=1, ENDCAP=2.
bool CholeskyDecomposition(double a[5][5], float L[5][5])
void a0(const double a0)
Setter: transverse impact parameter.
virtual void transToPers(const TrigInDetTrackFitPar *transObj, TrigInDetTrackFitPar_p3 *persObj, MsgStream &log)
void phi0(const double phi0)
Setter: azimuthal angle of the momentum.
void pT(const double pT)
Setter: transverse momentum.
bool calculateSquareRoot(const TrigInDetTrackFitPar *, TrigInDetTrackFitPar_p3 *)