12 #include "TDirectory.h"
18 theName(name.c_str()),where(whereIs.c_str()){
24 dirName+=name.c_str();
26 dirName+=whereIs.c_str();
37 resName+=
"/Resolution";
57 subName+=
"/subHistos";
121 return (rec-sim)/sigmarec;
125 return (rec-sim)/sim;
275 int simCharge = -simTrack.
type()/
abs(simTrack.
type());
277 double invSimP = (simTrack.
momentum().mag() == 0 ) ? 0 : simTrack.
momentum().mag();
284 resolution(signedInverseRecMom , simCharge*invSimP ),
void computePull(FreeTrajectoryState &fts, SimTrack &simTracks, HResolution *hReso)
void computeTDRResolution(FreeTrajectoryState &fts, SimTrack &simTracks, HResolution *hReso)
HResolution * hPull_08_12
void computeResolutionAndPull(TrajectoryStateOnSurface &vtx, SimTrack &simTrack)
HResolution * hResolution_12_21
HResolution * hTDRResolution
HResolution * hTDRResolution_12_24_plus
CartesianTrajectoryError cartesianError() const
HTrack(std::string, std::string name, std::string whereIs="")
HResolution * hResolution
double computeEfficiency(HTrackVariables *sim)
HResolution * hTDRResolution_12_24
HResolution * hTDRResolution_40_70
void cd(void)
go to top directory (ie. root)
HResolution * hResolution_12_24_plus
double resolution(double rec, double sim)
Sin< T >::type sin(const T &t)
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > AlgebraicSymMatrix66
Geom::Phi< T > phi() const
HResolution * hResolution_10_40
HResolution * hPull_10_40
HResolution * hResolution_12_24
TrackCharge charge() const
HResolution * hResolution_12_21_plus
const CurvilinearTrajectoryError & curvilinearError() const
HResolution * hTDRResolution_5_10
HResolution * hResolution_12_24_minus
Geom::Theta< T > theta() const
HResolution * hResolution_5_10
HTrackVariables * hVariables
HResolution * hTDRResolution_12_21_minus
FreeTrajectoryState * freeState(bool withErrors=true) const
HResolution * hPull_12_21
HResolution * hResolution_08_12
HResolution * hTDRResolution_12_21
HResolution * hTDRResolution_12_24_minus
double computeEfficiency(HTrackVariables *sim)
HResolution * hResolution_40_70
HResolution * hResolution_08
HResolution * hPull_70_100
void Fill(TrajectoryStateOnSurface &)
GlobalVector momentum() const
HResolution * hPull_40_70
const AlgebraicSymMatrix66 & matrix() const
double deltaR(double eta1, double eta2, double phi1, double phi2)
HResolution * hTDRResolution_08_12
HResolution * hPull_12_24_minus
void computeResolution(FreeTrajectoryState &fts, SimTrack &simTracks, HResolution *hReso)
HResolution * hPull_12_21_minus
void Fill(double p, double pt, double eta, double phi, double charge)
HResolution * hPull_12_24
HResolution * hTDRResolution_70_100
HResolution * hTDRResolution_08
int type() const
particle type (HEP PDT convension)
HResolution * hPull_12_24_plus
const AlgebraicSymMatrix55 & matrix() const
double pull(double rec, double sim, double sigmarec)
const math::XYZTLorentzVectorD & momentum() const
particle info...
HResolution * hResolution_70_100
HResolution * hTDRResolution_10_40
virtual Int_t Fill(Double_t x, Double_t y)
double signedInverseMomentum() const
Power< A, B >::type pow(const A &a, const B &b)
void setCurrentFolder(const std::string &fullpath)
void FillDeltaR(double deltaR)
HResolution * hResolution_12_21_minus
HResolution * hPull_12_21_plus
HResolution * hTDRResolution_12_21_plus