Program Listing for File Jet.h¶
↰ Return to documentation for file (xAODAnaHelpers/Jet.h)
#ifndef xAODAnaHelpers_Jet_H
#define xAODAnaHelpers_Jet_H
#include "xAODAnaHelpers/Particle.h"
#include "xAODAnaHelpers/MuonContainer.h"
namespace xAH {
class Jet : public Particle
{
public:
enum BTaggerOP {
None,
DL1_FixedCutBEff_60 , DL1_FixedCutBEff_70 , DL1_FixedCutBEff_77 , DL1_FixedCutBEff_85 ,
DL1r_FixedCutBEff_60 , DL1r_FixedCutBEff_70 , DL1r_FixedCutBEff_77 , DL1r_FixedCutBEff_85 ,
DL1rmu_FixedCutBEff_60, DL1rmu_FixedCutBEff_70, DL1rmu_FixedCutBEff_77, DL1rmu_FixedCutBEff_85,
MV2c10_FixedCutBEff_60, MV2c10_FixedCutBEff_70, MV2c10_FixedCutBEff_77, MV2c10_FixedCutBEff_85,
MV2c10_Continuous, DL1_Continuous, DL1r_Continuous, DL1rmu_Continuous // Continuous
};
float rapidity;
// trigger
int isTrigMatched;
std::vector<int> isTrigMatchedToChain;
std::string listTrigChains;
// clean
float Timing;
float LArQuality;
float HECQuality;
float NegativeE;
float AverageLArQF;
float BchCorrCell;
float N90Constituents;
float LArBadHVEFrac;
int LArBadHVNCell;
float ChargedFraction;
float OotFracClusters5;
float OotFracClusters10;
float LeadingClusterPt;
float LeadingClusterSecondLambda;
float LeadingClusterCenterLambda;
float LeadingClusterSecondR;
int clean_passLooseBad;
int clean_passLooseBadTrigger;
int clean_passLooseBadTriggerUgly;
int clean_passLooseBadUgly;
int clean_passTightBad;
int clean_passTightBadUgly;
// energy
float HECFrac;
float EMFrac;
float CentroidR;
float FracSamplingMax;
float FracSamplingMaxIndex;
float LowEtConstituentsFrac;
float GhostMuonSegmentCount;
float Width;
// trackPV
float NumTrkPt1000PV;
float SumPtTrkPt1000PV;
float TrackWidthPt1000PV;
float NumTrkPt500PV;
float SumPtTrkPt500PV;
float TrackWidthPt500PV;
float JVFPV;
// trackAll or trackPV
float Jvt;
float JvtJvfcorr;
float JvtRpt;
//JVC
float JVC;
// flavTag
float SV0;
float SV1;
float IP3D;
float SV1IP3D;
float COMBx;
float MV1;
float MV2c00;
float MV2c10;
float MV2c10mu;
float MV2c10rnn;
float MV2rmu;
float MV2r;
float MV2c20;
float MV2c100;
float DL1;
float DL1_pu;
float DL1_pc;
float DL1_pb;
float DL1mu;
float DL1mu_pu;
float DL1mu_pc;
float DL1mu_pb;
float DL1rnn;
float DL1rnn_pu;
float DL1rnn_pc;
float DL1rnn_pb;
float DL1rmu;
float DL1rmu_pu;
float DL1rmu_pc;
float DL1rmu_pb;
float DL1r;
float DL1r_pu;
float DL1r_pc;
float DL1r_pb;
int HadronConeExclTruthLabelID;
int HadronConeExclExtendedTruthLabelID;
float vtxOnlineValid;
float vtxHadDummy;
float bs_online_vx;
float bs_online_vy;
float bs_online_vz;
float vtx_offline_x0;
float vtx_offline_y0;
float vtx_offline_z0;
float vtx_online_x0;
float vtx_online_y0;
float vtx_online_z0;
float vtx_online_bkg_x0;
float vtx_online_bkg_y0;
float vtx_online_bkg_z0;
float JetFitter_nVTX ;
float JetFitter_nSingleTracks ;
float JetFitter_nTracksAtVtx ;
float JetFitter_mass ;
float JetFitter_energyFraction ;
float JetFitter_significance3d ;
float JetFitter_deltaeta ;
float JetFitter_deltaphi ;
float JetFitter_N2Tpar ;
float sv0_NGTinSvx ;
float sv0_N2Tpair ;
float sv0_massvx ;
float sv0_efracsvx ;
float sv0_normdist ;
float sv1_pu ;
float sv1_pb ;
float sv1_pc ;
float sv1_c ;
float sv1_cu ;
float sv1_NGTinSvx ;
float sv1_N2Tpair ;
float sv1_massvx ;
float sv1_efracsvx ;
float sv1_normdist ;
float sv1_Lxy ;
float sv1_sig3d ;
float sv1_L3d ;
float sv1_distmatlay;
float sv1_dR ;
float IP2D_pu ;
float IP2D_pb ;
float IP2D_pc ;
float IP2D ;
float IP2D_c ;
float IP2D_cu ;
float nIP2DTracks ;
std::vector<float> IP2D_gradeOfTracks ;
std::vector<float> IP2D_flagFromV0ofTracks ;
std::vector<float> IP2D_valD0wrtPVofTracks ;
std::vector<float> IP2D_sigD0wrtPVofTracks ;
std::vector<float> IP2D_weightBofTracks ;
std::vector<float> IP2D_weightCofTracks ;
std::vector<float> IP2D_weightUofTracks ;
float IP3D_pu ;
float IP3D_pb ;
float IP3D_pc ;
float IP3D_c ;
float IP3D_cu ;
float nIP3DTracks ;
std::vector<float> IP3D_gradeOfTracks ;
std::vector<float> IP3D_flagFromV0ofTracks ;
std::vector<float> IP3D_valD0wrtPVofTracks ;
std::vector<float> IP3D_sigD0wrtPVofTracks ;
std::vector<float> IP3D_valZ0wrtPVofTracks ;
std::vector<float> IP3D_sigZ0wrtPVofTracks ;
std::vector<float> IP3D_weightBofTracks ;
std::vector<float> IP3D_weightCofTracks ;
std::vector<float> IP3D_weightUofTracks ;
// jetBTag
int is_DL1_FixedCutBEff_60;
std::vector<float> SF_DL1_FixedCutBEff_60;
int is_DL1_FixedCutBEff_70;
std::vector<float> SF_DL1_FixedCutBEff_70;
int is_DL1_FixedCutBEff_77;
std::vector<float> SF_DL1_FixedCutBEff_77;
int is_DL1_FixedCutBEff_85;
std::vector<float> SF_DL1_FixedCutBEff_85;
int is_DL1r_FixedCutBEff_60;
std::vector<float> SF_DL1r_FixedCutBEff_60;
int is_DL1r_FixedCutBEff_70;
std::vector<float> SF_DL1r_FixedCutBEff_70;
int is_DL1r_FixedCutBEff_77;
std::vector<float> SF_DL1r_FixedCutBEff_77;
int is_DL1r_FixedCutBEff_85;
std::vector<float> SF_DL1r_FixedCutBEff_85;
int is_DL1rmu_FixedCutBEff_60;
std::vector<float> SF_DL1rmu_FixedCutBEff_60;
int is_DL1rmu_FixedCutBEff_70;
std::vector<float> SF_DL1rmu_FixedCutBEff_70;
int is_DL1rmu_FixedCutBEff_77;
std::vector<float> SF_DL1rmu_FixedCutBEff_77;
int is_DL1rmu_FixedCutBEff_85;
std::vector<float> SF_DL1rmu_FixedCutBEff_85;
int is_MV2c10_FixedCutBEff_60;
std::vector<float> SF_MV2c10_FixedCutBEff_60;
int is_MV2c10_FixedCutBEff_70;
std::vector<float> SF_MV2c10_FixedCutBEff_70;
int is_MV2c10_FixedCutBEff_77;
std::vector<float> SF_MV2c10_FixedCutBEff_77;
int is_MV2c10_FixedCutBEff_85;
std::vector<float> SF_MV2c10_FixedCutBEff_85;
// Continuous
int is_MV2c10_Continuous;
std::vector<float> SF_MV2c10_Continuous;
std::vector<float> inEffSF_MV2c10_Continuous;
int is_DL1_Continuous;
std::vector<float> SF_DL1_Continuous;
std::vector<float> inEffSF_DL1_Continuous;
int is_DL1r_Continuous;
std::vector<float> SF_DL1r_Continuous;
std::vector<float> inEffSF_DL1r_Continuous;
int is_DL1rmu_Continuous;
std::vector<float> SF_DL1rmu_Continuous;
std::vector<float> inEffSF_DL1rmu_Continuous;
// truth
int ConeTruthLabelID;
int TruthCount;
float TruthLabelDeltaR_B;
float TruthLabelDeltaR_C;
float TruthLabelDeltaR_T;
int PartonTruthLabelID;
float GhostTruthAssociationFraction;
TLorentzVector truth_p4;
// charge
double charge;
// passSel
char passSel;
// passOR
char passOR;
const Muon* matchedMuon =nullptr;
const Jet * matchedJet =nullptr;
public:
int is_btag(BTaggerOP op) const;
const std::vector<float>& SF_btag(BTaggerOP op) const;
void muonInJetCorrection(const xAH::MuonContainer* muons);
};
}//xAH
#endif // xAODAnaHelpers_Particle_H