#include <Calibration/EcalCalibAlgos/interface/ZeeKinematicTools.h>
Public Member Functions | |
ZeeKinematicTools () | |
~ZeeKinematicTools () | |
Static Public Member Functions | |
static float | calculateZEta (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate) |
static float | calculateZMass_noTK (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate) |
static float | calculateZMass_withTK (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate) |
static float | calculateZMassWithCorrectedElectrons_noTK (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate, float ele1EnergyCorrection, float ele2EnergyCorrection) |
static float | calculateZMassWithCorrectedElectrons_withTK (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate, float ele1EnergyCorrection, float ele2EnergyCorrection) |
static float | calculateZPhi (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate) |
static float | calculateZPt (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate) |
static float | calculateZRapidity (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate) |
static float | calculateZTheta (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate) |
static float | cosThetaElectrons_SC (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate, float ele1EnergyCorrection, float ele2EnergyCorrection) |
static float | cosThetaElectrons_TK (const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate, float ele1EnergyCorrection, float ele2EnergyCorrection) |
Definition at line 32 of file ZeeKinematicTools.h.
ZeeKinematicTools::ZeeKinematicTools | ( | ) |
ZeeKinematicTools::~ZeeKinematicTools | ( | ) |
float ZeeKinematicTools::calculateZEta | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate | ) | [static] |
Definition at line 139 of file ZeeKinematicTools.cc.
Referenced by ZeePlots::fillZInfo().
00140 { 00141 00142 TLorentzVector ele1LV( aZCandidate.first->getRecoElectron()->px(), aZCandidate.first->getRecoElectron()->py(), aZCandidate.first->getRecoElectron()->pz(), aZCandidate.first->getRecoElectron()->superCluster()->energy()); 00143 00144 TLorentzVector ele2LV( aZCandidate.second->getRecoElectron()->px(), aZCandidate.second->getRecoElectron()->py(), aZCandidate.second->getRecoElectron()->pz(), aZCandidate.second->getRecoElectron()->superCluster()->energy()); 00145 00146 return (ele1LV + ele2LV).Eta(); 00147 00148 }
float ZeeKinematicTools::calculateZMass_noTK | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate | ) | [static] |
Definition at line 107 of file ZeeKinematicTools.cc.
References ZIterativeAlgorithmWithFit::invMassCalc().
00108 { 00109 00110 return ZIterativeAlgorithmWithFit::invMassCalc(aZCandidate.first->getRecoElectron()->superCluster()->energy(), aZCandidate.first->getRecoElectron()->superCluster()->eta(), aZCandidate.first->getRecoElectron()->superCluster()->phi(), aZCandidate.second->getRecoElectron()->superCluster()->energy(), aZCandidate.second->getRecoElectron()->superCluster()->eta(), aZCandidate.second->getRecoElectron()->superCluster()->phi()); 00111 00112 }
float ZeeKinematicTools::calculateZMass_withTK | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate | ) | [static] |
Definition at line 116 of file ZeeKinematicTools.cc.
References ZIterativeAlgorithmWithFit::invMassCalc().
Referenced by ZeeCalibration::duringLoop().
00117 { 00118 00119 return ZIterativeAlgorithmWithFit::invMassCalc(aZCandidate.first->getRecoElectron()->superCluster()->energy(), aZCandidate.first->getRecoElectron()->eta(), aZCandidate.first->getRecoElectron()->phi(), aZCandidate.second->getRecoElectron()->superCluster()->energy(), aZCandidate.second->getRecoElectron()->eta(), aZCandidate.second->getRecoElectron()->phi()); 00120 00121 }
float ZeeKinematicTools::calculateZMassWithCorrectedElectrons_noTK | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate, | |
float | ele1EnergyCorrection, | |||
float | ele2EnergyCorrection | |||
) | [static] |
Definition at line 91 of file ZeeKinematicTools.cc.
References ZIterativeAlgorithmWithFit::invMassCalc().
00092 { 00093 return ZIterativeAlgorithmWithFit::invMassCalc(aZCandidate.first->getRecoElectron()->superCluster()->energy() / ele1EnergyCorrection, aZCandidate.first->getRecoElectron()->superCluster()->eta(), aZCandidate.first->getRecoElectron()->superCluster()->phi(), aZCandidate.second->getRecoElectron()->superCluster()->energy() / ele2EnergyCorrection, aZCandidate.second->getRecoElectron()->superCluster()->eta(), aZCandidate.second->getRecoElectron()->superCluster()->phi()); 00094 00095 }
float ZeeKinematicTools::calculateZMassWithCorrectedElectrons_withTK | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate, | |
float | ele1EnergyCorrection, | |||
float | ele2EnergyCorrection | |||
) | [static] |
Definition at line 99 of file ZeeKinematicTools.cc.
References ZIterativeAlgorithmWithFit::invMassCalc().
Referenced by ZeeCalibration::duringLoop().
00100 { 00101 return ZIterativeAlgorithmWithFit::invMassCalc(aZCandidate.first->getRecoElectron()->superCluster()->energy() / ele1EnergyCorrection, aZCandidate.first->getRecoElectron()->eta(), aZCandidate.first->getRecoElectron()->phi(), aZCandidate.second->getRecoElectron()->superCluster()->energy() / ele2EnergyCorrection, aZCandidate.second->getRecoElectron()->eta(), aZCandidate.second->getRecoElectron()->phi()); 00102 00103 }
float ZeeKinematicTools::calculateZPhi | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate | ) | [static] |
Definition at line 165 of file ZeeKinematicTools.cc.
Referenced by ZeePlots::fillZInfo().
00166 { 00167 00168 TLorentzVector ele1LV( aZCandidate.first->getRecoElectron()->px(), aZCandidate.first->getRecoElectron()->py(), aZCandidate.first->getRecoElectron()->pz(), aZCandidate.first->getRecoElectron()->superCluster()->energy()); 00169 00170 TLorentzVector ele2LV( aZCandidate.second->getRecoElectron()->px(), aZCandidate.second->getRecoElectron()->py(), aZCandidate.second->getRecoElectron()->pz(), aZCandidate.second->getRecoElectron()->superCluster()->energy()); 00171 00172 return (ele1LV + ele2LV).Phi(); 00173 00174 }
float ZeeKinematicTools::calculateZPt | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate | ) | [static] |
Definition at line 178 of file ZeeKinematicTools.cc.
Referenced by ZeePlots::fillZInfo().
00179 { 00180 00181 TLorentzVector ele1LV( aZCandidate.first->getRecoElectron()->px(), aZCandidate.first->getRecoElectron()->py(), aZCandidate.first->getRecoElectron()->pz(), aZCandidate.first->getRecoElectron()->superCluster()->energy()); 00182 00183 TLorentzVector ele2LV( aZCandidate.second->getRecoElectron()->px(), aZCandidate.second->getRecoElectron()->py(), aZCandidate.second->getRecoElectron()->pz(), aZCandidate.second->getRecoElectron()->superCluster()->energy()); 00184 00185 return (ele1LV + ele2LV).Pt(); 00186 00187 }
float ZeeKinematicTools::calculateZRapidity | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate | ) | [static] |
Definition at line 125 of file ZeeKinematicTools.cc.
Referenced by ZeePlots::fillZInfo().
00126 { 00127 00128 TLorentzVector ele1LV( aZCandidate.first->getRecoElectron()->px(), aZCandidate.first->getRecoElectron()->py(), aZCandidate.first->getRecoElectron()->pz(), aZCandidate.first->getRecoElectron()->superCluster()->energy()); 00129 00130 TLorentzVector ele2LV( aZCandidate.second->getRecoElectron()->px(), aZCandidate.second->getRecoElectron()->py(), aZCandidate.second->getRecoElectron()->pz(), aZCandidate.second->getRecoElectron()->superCluster()->energy()); 00131 00132 00133 return (ele1LV + ele2LV).Rapidity(); 00134 00135 }
float ZeeKinematicTools::calculateZTheta | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate | ) | [static] |
Definition at line 152 of file ZeeKinematicTools.cc.
Referenced by ZeePlots::fillZInfo().
00153 { 00154 00155 TLorentzVector ele1LV( aZCandidate.first->getRecoElectron()->px(), aZCandidate.first->getRecoElectron()->py(), aZCandidate.first->getRecoElectron()->pz(), aZCandidate.first->getRecoElectron()->superCluster()->energy()); 00156 00157 TLorentzVector ele2LV( aZCandidate.second->getRecoElectron()->px(), aZCandidate.second->getRecoElectron()->py(), aZCandidate.second->getRecoElectron()->pz(), aZCandidate.second->getRecoElectron()->superCluster()->energy()); 00158 00159 return (ele1LV + ele2LV).Theta(); 00160 00161 }
float ZeeKinematicTools::cosThetaElectrons_SC | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate, | |
float | ele1EnergyCorrection, | |||
float | ele2EnergyCorrection | |||
) | [static] |
Definition at line 43 of file ZeeKinematicTools.cc.
References funct::cos(), funct::exp(), funct::sin(), and funct::sqrt().
Referenced by ZeeCalibration::duringLoop().
00043 { 00044 00045 float theta1 = 2. * atan( exp(- aZCandidate.first->getRecoElectron()->superCluster()->eta()) ); 00046 float phi1 = aZCandidate.first->getRecoElectron()->superCluster()->phi(); 00047 00048 float x1 = aZCandidate.first->getRecoElectron()->superCluster()->energy() * sin(theta1) * cos ( phi1 ); 00049 float y1 = aZCandidate.first->getRecoElectron()->superCluster()->energy() * sin(theta1) * sin ( phi1 ); 00050 float z1 = aZCandidate.first->getRecoElectron()->superCluster()->energy() * cos(theta1); 00051 float mod1 = sqrt( x1*x1 + y1*y1 + z1*z1 ); 00052 00053 float theta2 = 2. * atan( exp(- aZCandidate.second->getRecoElectron()->superCluster()->eta()) ); 00054 float phi2 = aZCandidate.second->getRecoElectron()->superCluster()->phi(); 00055 00056 float x2 = aZCandidate.second->getRecoElectron()->superCluster()->energy() * sin(theta2) * cos ( phi2 ); 00057 float y2 = aZCandidate.second->getRecoElectron()->superCluster()->energy() * sin(theta2) * sin ( phi2 ); 00058 float z2 = aZCandidate.second->getRecoElectron()->superCluster()->energy() * cos(theta2); 00059 float mod2 = sqrt( x2*x2 + y2*y2 + z2*z2 ); 00060 00061 return (x1*x2 + y1*y2 + z1*z2)/( mod1* mod2 ); 00062 00063 00064 }
float ZeeKinematicTools::cosThetaElectrons_TK | ( | const std::pair< calib::CalibElectron *, calib::CalibElectron * > & | aZCandidate, | |
float | ele1EnergyCorrection, | |||
float | ele2EnergyCorrection | |||
) | [static] |
Definition at line 68 of file ZeeKinematicTools.cc.
References funct::cos(), funct::exp(), funct::sin(), and funct::sqrt().
Referenced by ZeeCalibration::duringLoop().
00068 { 00069 00070 float theta1 = 2. * atan( exp(- aZCandidate.first->getRecoElectron()->eta()) ); 00071 float phi1 = aZCandidate.first->getRecoElectron()->phi(); 00072 00073 float x1 = aZCandidate.first->getRecoElectron()->superCluster()->energy() * sin(theta1) * cos ( phi1 ); 00074 float y1 = aZCandidate.first->getRecoElectron()->superCluster()->energy() * sin(theta1) * sin ( phi1 ); 00075 float z1 = aZCandidate.first->getRecoElectron()->superCluster()->energy() * cos(theta1); 00076 float mod1 = sqrt( x1*x1 + y1*y1 + z1*z1 ); 00077 00078 float theta2 = 2. * atan( exp(- aZCandidate.second->getRecoElectron()->eta()) ); 00079 float phi2 = aZCandidate.second->getRecoElectron()->phi(); 00080 00081 float x2 = aZCandidate.second->getRecoElectron()->superCluster()->energy() * sin(theta2) * cos ( phi2 ); 00082 float y2 = aZCandidate.second->getRecoElectron()->superCluster()->energy() * sin(theta2) * sin ( phi2 ); 00083 float z2 = aZCandidate.second->getRecoElectron()->superCluster()->energy() * cos(theta2); 00084 float mod2 = sqrt( x2*x2 + y2*y2 + z2*z2 ); 00085 00086 return (x1*x2 + y1*y2 + z1*z2)/( mod1* mod2 ); 00087 }