CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/RecoTauTag/RecoTau/interface/RecoTauDiscriminantFunctions.h

Go to the documentation of this file.
00001 #ifndef RecoTauTag_RecoTau_RecoTauDiscriminantFunctions_h
00002 #define RecoTauTag_RecoTau_RecoTauDiscriminantFunctions_h
00003 
00004 /*
00005  * RecoTauDiscriminantFunctions
00006  *
00007  * Collection of unary functions used to compute tau discriminant values.
00008  * Each function here (may be) used in an MVA discriminator.
00009  *
00010  * The functions all have the form
00011  *      ReturnType Function(const PFTau& tau)
00012  * where ReturnType is either vector<double> or double.
00013  *
00014  * Author: Evan K. Friis, UC Davis
00015  *
00016  * $Id $
00017  */
00018 
00019 #include "DataFormats/TauReco/interface/PFTau.h"
00020 #include <vector>
00021 
00022 namespace reco { namespace tau { namespace disc {
00023 
00024 // Save typing
00025 typedef const PFTau& Tau;
00026 typedef std::vector<double> VDouble;
00027 
00030 PFCandidateRef mainTrack(const PFTau& tau);
00031 
00032 // HPStanc variables
00033 double JetPt(Tau tau);
00034 double JetEta(Tau tau);
00035 double AbsJetEta(Tau tau);
00036 double JetWidth(Tau tau);
00037 // Delta R between tau and jet axis
00038 double JetTauDR(Tau tau);
00039 
00040 double SignalPtFraction(Tau tau);
00041 double IsolationChargedPtFraction(Tau tau);
00042 double IsolationECALPtFraction(Tau tau);
00043 double IsolationNeutralHadronPtFraction(Tau tau);
00044 double MainTrackPtFraction(Tau tau);
00045 double IsolationChargedAveragePtFraction(Tau tau);
00046 double OpeningDeltaR(Tau tau);
00047 double OpeningAngle3D(Tau tau);
00048 double ScaledEtaJetCollimation(Tau tau);
00049 double ScaledPhiJetCollimation(Tau tau);
00050 double ScaledOpeningDeltaR(Tau tau);
00051 VDouble Dalitz2(Tau tau);
00052 
00053 // Sum of charged isolation activity above/below 1 GeV
00054 double IsolationChargedSumHard(Tau tau);
00055 double IsolationChargedSumSoft(Tau tau);
00056 double IsolationChargedSumHardRelative(Tau tau);
00057 double IsolationChargedSumSoftRelative(Tau tau);
00058 
00059 // Sum of ecal isolation activity above/below 1.5 GeV
00060 double IsolationECALSumHard(Tau tau);
00061 double IsolationECALSumSoft(Tau tau);
00062 double IsolationECALSumHardRelative(Tau tau);
00063 double IsolationECALSumSoftRelative(Tau tau);
00064 
00065 // Fraction of signal energy carried by pizeros.
00066 double EMFraction(Tau tau);
00067 
00068 // Absolute significance of impact parameter
00069 double ImpactParameterSignificance(Tau tau);
00070 
00071 double Pt(Tau tau);
00072 double Eta(Tau tau);
00073 double AbsEta(Tau tau);
00074 double Mass(Tau tau);
00075 double DecayMode(Tau tau);
00076 
00077 // Number of objects in isolation cone
00078 double OutlierN(Tau);
00079 
00080 // Number of charged objects in isolation cone
00081 double OutlierNCharged(Tau);
00082 
00083 double OutlierSumPt(Tau);
00084 double ChargedOutlierSumPt(Tau);
00085 double NeutralOutlierSumPt(Tau);
00086 
00087 // Pt of the main track
00088 double MainTrackPt(Tau);
00089 // Eta of the main track
00090 double MainTrackEta(Tau);
00091 // Angle of main track to tau axis
00092 double MainTrackAngle(Tau);
00093 
00094 // Exactly the same as "Mass", needed for backwards compatability
00095 double InvariantMassOfSignal(Tau tau);
00096 
00097 // Quanitites of tracks
00098 VDouble TrackPt(Tau);
00099 VDouble TrackAngle(Tau);
00100 VDouble TrackEta(Tau);
00101 
00102 // Quanitites of PiZeros
00103 VDouble PiZeroPt(Tau);
00104 VDouble PiZeroAngle(Tau);
00105 VDouble PiZeroEta(Tau);
00106 
00107 // Isolation quantities
00108 VDouble OutlierPt(Tau);
00109 VDouble OutlierAngle(Tau);
00110 VDouble ChargedOutlierPt(Tau);
00111 VDouble ChargedOutlierAngle(Tau);
00112 VDouble NeutralOutlierPt(Tau);
00113 VDouble NeutralOutlierAngle(Tau);
00114 
00115 // Dalitz for three prongs
00116 VDouble Dalitz(Tau);
00117 
00118 // Deprecated functions needed for backwards compatability
00119 VDouble FilteredObjectPt(Tau);
00120 VDouble GammaOccupancy(Tau);
00121 VDouble GammaPt(Tau);
00122 VDouble InvariantMassOfSignalWithFiltered(Tau);
00123 VDouble InvariantMass(Tau);
00124 VDouble OutlierMass(Tau);
00125 
00126 }}} // end namespace reco::tau::disc
00127 #endif