Fork me on GitHub

Changeset 2671df6 in git for classes


Ignore:
Timestamp:
Feb 16, 2021, 4:32:30 PM (3 years ago)
Author:
Michele Selvaggi <michele.selvaggi@…>
Branches:
master
Children:
0852ba95
Parents:
90975be
Message:

included CovarianceMatrix in Track and ParticleFlowCandidate branches

Location:
classes
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • classes/DelphesClasses.cc

    r90975be r2671df6  
    108108//------------------------------------------------------------------------------
    109109
     110TMatrixDSym Track::CovarianceMatrix() const
     111{
     112  TMatrixDSym Cv;
     113  Cv.ResizeTo(5, 5);
     114 
     115  // convert diagonal term to original units
     116  Cv(0, 0)=TMath::Power(ErrorD0*1.0E-3, 2.);
     117  Cv(1, 1)=TMath::Power(ErrorPhi, 2.);
     118  Cv(2, 2)=TMath::Power(ErrorC*1.0E-3, 2.);
     119  Cv(3, 3)=TMath::Power(ErrorDZ*1.0E-3, 2.);
     120  Cv(4, 4)=TMath::Power(ErrorCtgTheta, 2.);
     121
     122  // off diagonal terms
     123  Cv(0, 1)=ErrorD0Phi;
     124  Cv(0, 2)=ErrorD0C;
     125  Cv(0, 3)=ErrorD0DZ;
     126  Cv(0, 4)=ErrorD0CtgTheta;
     127  Cv(1, 2)=ErrorPhiC;
     128  Cv(1, 3)=ErrorPhiDZ;
     129  Cv(1, 4)=ErrorPhiCtgTheta;
     130  Cv(2, 3)=ErrorCDZ;
     131  Cv(2, 4)=ErrorCCtgTheta;
     132  Cv(3, 4)=ErrorDZCtgTheta;
     133
     134  Cv(1, 0)=Cv(0, 1);
     135  Cv(2, 0)=Cv(0, 2);
     136  Cv(3, 0)=Cv(0, 3);
     137  Cv(4, 0)=Cv(0, 4);
     138  Cv(2, 1)=Cv(1, 2);
     139  Cv(3, 1)=Cv(1, 3);
     140  Cv(4, 1)=Cv(1, 4);
     141  Cv(3, 2)=Cv(2, 3);
     142  Cv(4, 2)=Cv(2, 4);
     143  Cv(4, 3)=Cv(3, 4);
     144
     145  return Cv;
     146}
     147
     148
     149//------------------------------------------------------------------------------
     150
    110151TLorentzVector Tower::P4() const
    111152{
     
    122163  vec.SetPtEtaPhiM(PT, Eta, Phi, 0.0);
    123164  return vec;
     165}
     166
     167//------------------------------------------------------------------------------
     168
     169TMatrixDSym ParticleFlowCandidate::CovarianceMatrix() const
     170{
     171  TMatrixDSym Cv;
     172  Cv.ResizeTo(5, 5);
     173 
     174  // convert diagonal term to original units
     175  Cv(0, 0)=TMath::Power(ErrorD0*1.0E-3, 2.);
     176  Cv(1, 1)=TMath::Power(ErrorPhi, 2.);
     177  Cv(2, 2)=TMath::Power(ErrorC*1.0E-3, 2.);
     178  Cv(3, 3)=TMath::Power(ErrorDZ*1.0E-3, 2.);
     179  Cv(4, 4)=TMath::Power(ErrorCtgTheta, 2.);
     180
     181  // off diagonal terms
     182  Cv(0, 1)=ErrorD0Phi;
     183  Cv(0, 2)=ErrorD0C;
     184  Cv(0, 3)=ErrorD0DZ;
     185  Cv(0, 4)=ErrorD0CtgTheta;
     186  Cv(1, 2)=ErrorPhiC;
     187  Cv(1, 3)=ErrorPhiDZ;
     188  Cv(1, 4)=ErrorPhiCtgTheta;
     189  Cv(2, 3)=ErrorCDZ;
     190  Cv(2, 4)=ErrorCCtgTheta;
     191  Cv(3, 4)=ErrorDZCtgTheta;
     192
     193  Cv(1, 0)=Cv(0, 1);
     194  Cv(2, 0)=Cv(0, 2);
     195  Cv(3, 0)=Cv(0, 3);
     196  Cv(4, 0)=Cv(0, 4);
     197  Cv(2, 1)=Cv(1, 2);
     198  Cv(3, 1)=Cv(1, 3);
     199  Cv(4, 1)=Cv(1, 4);
     200  Cv(3, 2)=Cv(2, 3);
     201  Cv(4, 2)=Cv(2, 4);
     202  Cv(4, 3)=Cv(3, 4);
     203
     204  return Cv;
    124205}
    125206
  • classes/DelphesClasses.h

    r90975be r2671df6  
    473473  Float_t ErrorD0; // track transverse impact parameter error
    474474  Float_t ErrorDZ; // track longitudinal impact parameter error
     475  Float_t ErrorC; // track curvature error
     476
     477  // track covariance off-diagonal terms
     478  Float_t ErrorD0Phi;     
     479  Float_t ErrorD0C;       
     480  Float_t ErrorD0DZ;     
     481  Float_t ErrorD0CtgTheta;   
     482  Float_t ErrorPhiC;     
     483  Float_t ErrorPhiDZ;     
     484  Float_t ErrorPhiCtgTheta ;
     485  Float_t ErrorCDZ;       
     486  Float_t ErrorCCtgTheta;   
     487  Float_t ErrorDZCtgTheta;   
    475488
    476489  TRef Particle; // reference to generated particle
     
    482495
    483496  TLorentzVector P4() const;
     497  TMatrixDSym CovarianceMatrix() const;
    484498
    485499  ClassDef(Track, 3)
     
    561575  Float_t ErrorD0; // track transverse impact parameter error
    562576  Float_t ErrorDZ; // track longitudinal impact parameter error
     577  Float_t ErrorC; // track curvature error
     578
     579  // track covariance off-diagonal terms
     580  Float_t ErrorD0Phi;     
     581  Float_t ErrorD0C;       
     582  Float_t ErrorD0DZ;     
     583  Float_t ErrorD0CtgTheta;   
     584  Float_t ErrorPhiC;     
     585  Float_t ErrorPhiDZ;     
     586  Float_t ErrorPhiCtgTheta ;
     587  Float_t ErrorCDZ;       
     588  Float_t ErrorCCtgTheta;   
     589  Float_t ErrorDZCtgTheta;   
    563590
    564591  Int_t VertexIndex; // reference to vertex
     
    568595
    569596  TLorentzVector P4() const;
     597  TMatrixDSym CovarianceMatrix() const;
    570598
    571599  Int_t NTimeHits; // number of hits contributing to time measurement
     
    578606  TRefArray Particles; // references to generated particles
    579607
    580   ClassDef(ParticleFlowCandidate, 1)
     608  ClassDef(ParticleFlowCandidate, 2)
    581609
    582610};
Note: See TracChangeset for help on using the changeset viewer.