#include "Top_MET_D3PD.h" #include //constructor Top_MET_D3PD::Top_MET_D3PD(): Top_MET() ,Ntp(NULL) ,MET_type(MET_RefFinal_em_tight) { Reset(); } //destructor Top_MET_D3PD::~Top_MET_D3PD(){} void Top_MET_D3PD::Configure(D3PDReader *Ntp_){ Ntp=Ntp_; LinktoMET(); Reset(); } bool Top_MET_D3PD::Set_MET_Def(int type){ if(type>=0 && type Jets_JESup_){ if(MET_type==MET_RefFinal_em_tight || MET_type==MET_RefFinal_em_medium || MET_type==MET_RefFinal_em_tight_photon || MET_type==MET_RefFinal_em_medium_photon){ return Top_MET::ApplySoftJetUncertainty(sigma,Jets_JESup_,EM); } return Top_MET::ApplySoftJetUncertainty(sigma,Jets_JESup_,LC); } void Top_MET_D3PD::ApplyCellOutUncertainty(float sigma){ if(MET_type==MET_RefFinal_em_tight || MET_type==MET_RefFinal_em_medium || MET_type==MET_RefFinal_em_tight_photon || MET_type==MET_RefFinal_em_medium_photon){ return Top_MET::ApplyCellOutUncertainty(sigma,EM); } return Top_MET::ApplyCellOutUncertainty(sigma,LC); } void Top_MET_D3PD::LinktoMET(){ if(Ntp==NULL){ std::cout << "Error D3PD reader is not configured (Top_MET_D3PD::LinktoMET)" << std::endl; return; } if(MET_type==MET_RefFinal_em_tight){ Set_METComposition((Ntp->MET_RefFinal_em_tight_etx), (Ntp->MET_RefFinal_em_tight_ety), (Ntp->MET_RefFinal_em_tight_sumet), (Ntp->MET_RefEle_em_tight_sumet), (Ntp->MET_RefEle_em_tight_etx), (Ntp->MET_RefEle_em_tight_ety), (Ntp->MET_RefGamma_em_tight_sumet), (Ntp->MET_RefGamma_em_tight_etx), (Ntp->MET_RefGamma_em_tight_ety), (Ntp->MET_RefJet_em_tight_sumet), (Ntp->MET_RefJet_em_tight_etx), (Ntp->MET_RefJet_em_tight_ety), (Ntp->MET_SoftJets_em_tight_sumet), (Ntp->MET_SoftJets_em_tight_etx), (Ntp->MET_SoftJets_em_tight_ety), (Ntp->MET_CellOut_em_tight_sumet), (Ntp->MET_CellOut_em_tight_etx), (Ntp->MET_CellOut_em_tight_ety), (Ntp->MET_Muon_Total_Muid_em_tight_sumet), (Ntp->MET_Muon_Total_Muid_em_tight_etx), (Ntp->MET_Muon_Total_Muid_em_tight_ety) ); Set_METWeights(Ntp->el_MET_em_tight_wpx, Ntp->el_MET_em_tight_wpy, Ntp->el_MET_em_tight_wet, Ntp->ph_MET_em_tight_wpx, Ntp->ph_MET_em_tight_wpy, Ntp->ph_MET_em_tight_wet, Ntp->jet_em_tight_wpx, Ntp->jet_em_tight_wpy, Ntp->jet_em_tight_wet, Ntp->mu_muid_MET_em_tight_statusWord, Ntp->mu_muid_MET_em_tight_wpx, Ntp->mu_muid_MET_em_tight_wpy, Ntp->mu_muid_MET_em_tight_wet ); } else if(MET_type==MET_RefFinal_em_medium){ Set_METComposition((Ntp->MET_RefFinal_em_medium_etx), (Ntp->MET_RefFinal_em_medium_ety), (Ntp->MET_RefFinal_em_medium_sumet), (Ntp->MET_RefEle_em_medium_sumet), (Ntp->MET_RefEle_em_medium_etx), (Ntp->MET_RefEle_em_medium_ety), (Ntp->MET_RefGamma_em_medium_sumet), (Ntp->MET_RefGamma_em_medium_etx), (Ntp->MET_RefGamma_em_medium_ety), (Ntp->MET_RefJet_em_medium_sumet), (Ntp->MET_RefJet_em_medium_etx), (Ntp->MET_RefJet_em_medium_ety), (Ntp->MET_SoftJets_em_medium_sumet), (Ntp->MET_SoftJets_em_medium_etx), (Ntp->MET_SoftJets_em_medium_ety), (Ntp->MET_CellOut_em_medium_sumet), (Ntp->MET_CellOut_em_medium_etx), (Ntp->MET_CellOut_em_medium_ety), (Ntp->MET_Muon_Total_Muid_em_medium_sumet), (Ntp->MET_Muon_Total_Muid_em_medium_etx), (Ntp->MET_Muon_Total_Muid_em_medium_ety) ); Set_METWeights(Ntp->el_MET_em_medium_wpx, Ntp->el_MET_em_medium_wpy, Ntp->el_MET_em_medium_wet, Ntp->ph_MET_em_medium_wpx, Ntp->ph_MET_em_medium_wpy, Ntp->ph_MET_em_medium_wet, Ntp->jet_em_medium_wpx, Ntp->jet_em_medium_wpy, Ntp->jet_em_medium_wet, Ntp->mu_muid_MET_em_medium_statusWord, Ntp->mu_muid_MET_em_medium_wpx, Ntp->mu_muid_MET_em_medium_wpy, Ntp->mu_muid_MET_em_medium_wet ); } else if(MET_type==MET_RefFinal_em_tight_photon){ Set_METComposition((Ntp->MET_RefFinal_em_tight_photon_etx), (Ntp->MET_RefFinal_em_tight_photon_ety), (Ntp->MET_RefFinal_em_tight_photon_sumet), (Ntp->MET_RefEle_em_tight_photon_sumet), (Ntp->MET_RefEle_em_tight_photon_etx), (Ntp->MET_RefEle_em_tight_photon_ety), (Ntp->MET_RefGamma_em_tight_photon_sumet), (Ntp->MET_RefGamma_em_tight_photon_etx), (Ntp->MET_RefGamma_em_tight_photon_ety), (Ntp->MET_RefJet_em_tight_photon_sumet), (Ntp->MET_RefJet_em_tight_photon_etx), (Ntp->MET_RefJet_em_tight_photon_ety), (Ntp->MET_SoftJets_em_tight_photon_sumet), (Ntp->MET_SoftJets_em_tight_photon_etx), (Ntp->MET_SoftJets_em_tight_photon_ety), (Ntp->MET_CellOut_em_tight_photon_sumet), (Ntp->MET_CellOut_em_tight_photon_etx), (Ntp->MET_CellOut_em_tight_photon_ety), (Ntp->MET_Muon_Total_Muid_em_tight_photon_sumet), (Ntp->MET_Muon_Total_Muid_em_tight_photon_etx), (Ntp->MET_Muon_Total_Muid_em_tight_photon_ety) ); Set_METWeights(Ntp->el_MET_em_tight_photon_wpx, Ntp->el_MET_em_tight_photon_wpy, Ntp->el_MET_em_tight_photon_wet, Ntp->ph_MET_em_tight_photon_wpx, Ntp->ph_MET_em_tight_photon_wpy, Ntp->ph_MET_em_tight_photon_wet, Ntp->jet_em_tight_photon_wpx, Ntp->jet_em_tight_photon_wpy, Ntp->jet_em_tight_photon_wet, Ntp->mu_muid_MET_em_tight_photon_statusWord, Ntp->mu_muid_MET_em_tight_photon_wpx, Ntp->mu_muid_MET_em_tight_photon_wpy, Ntp->mu_muid_MET_em_tight_photon_wet ); } else if(MET_type==MET_RefFinal_em_medium_photon){ Set_METComposition((Ntp->MET_RefFinal_em_medium_photon_etx), (Ntp->MET_RefFinal_em_medium_photon_ety), (Ntp->MET_RefFinal_em_medium_photon_sumet), (Ntp->MET_RefEle_em_medium_photon_sumet), (Ntp->MET_RefEle_em_medium_photon_etx), (Ntp->MET_RefEle_em_medium_photon_ety), (Ntp->MET_RefGamma_em_medium_photon_sumet), (Ntp->MET_RefGamma_em_medium_photon_etx), (Ntp->MET_RefGamma_em_medium_photon_ety), (Ntp->MET_RefJet_em_medium_photon_sumet), (Ntp->MET_RefJet_em_medium_photon_etx), (Ntp->MET_RefJet_em_medium_photon_ety), (Ntp->MET_SoftJets_em_medium_photon_sumet), (Ntp->MET_SoftJets_em_medium_photon_etx), (Ntp->MET_SoftJets_em_medium_photon_ety), (Ntp->MET_CellOut_em_medium_photon_sumet), (Ntp->MET_CellOut_em_medium_photon_etx), (Ntp->MET_CellOut_em_medium_photon_ety), (Ntp->MET_Muon_Total_Muid_em_medium_photon_sumet), (Ntp->MET_Muon_Total_Muid_em_medium_photon_etx), (Ntp->MET_Muon_Total_Muid_em_medium_photon_ety) ); Set_METWeights(Ntp->el_MET_em_medium_photon_wpx, Ntp->el_MET_em_medium_photon_wpy, Ntp->el_MET_em_medium_photon_wet, Ntp->ph_MET_em_medium_photon_wpx, Ntp->ph_MET_em_medium_photon_wpy, Ntp->ph_MET_em_medium_photon_wet, Ntp->jet_em_medium_photon_wpx, Ntp->jet_em_medium_photon_wpy, Ntp->jet_em_medium_photon_wet, Ntp->mu_muid_MET_em_medium_photon_statusWord, Ntp->mu_muid_MET_em_medium_photon_wpx, Ntp->mu_muid_MET_em_medium_photon_wpy, Ntp->mu_muid_MET_em_medium_photon_wet ); } else if(MET_type==MET_RefFinal_4lc_tight){ Set_METComposition((Ntp->MET_RefFinal_4lc_tight_etx), (Ntp->MET_RefFinal_4lc_tight_ety), (Ntp->MET_RefFinal_4lc_tight_sumet), (Ntp->MET_RefEle_4lc_tight_sumet), (Ntp->MET_RefEle_4lc_tight_etx), (Ntp->MET_RefEle_4lc_tight_ety), (Ntp->MET_RefGamma_4lc_tight_sumet), (Ntp->MET_RefGamma_4lc_tight_etx), (Ntp->MET_RefGamma_4lc_tight_ety), (Ntp->MET_RefJet_4lc_tight_sumet), (Ntp->MET_RefJet_4lc_tight_etx), (Ntp->MET_RefJet_4lc_tight_ety), (Ntp->MET_SoftJets_4lc_tight_sumet), (Ntp->MET_SoftJets_4lc_tight_etx), (Ntp->MET_SoftJets_4lc_tight_ety), (Ntp->MET_CellOut_4lc_tight_sumet), (Ntp->MET_CellOut_4lc_tight_etx), (Ntp->MET_CellOut_4lc_tight_ety), (Ntp->MET_Muon_Total_Muid_4lc_tight_sumet), (Ntp->MET_Muon_Total_Muid_4lc_tight_etx), (Ntp->MET_Muon_Total_Muid_4lc_tight_ety) ); Set_METWeights(Ntp->el_MET_4lc_tight_wpx, Ntp->el_MET_4lc_tight_wpy, Ntp->el_MET_4lc_tight_wet, Ntp->ph_MET_4lc_tight_wpx, Ntp->ph_MET_4lc_tight_wpy, Ntp->ph_MET_4lc_tight_wet, Ntp->jet_AntiKt4LCTopoJets_4lc_tight_wpx, Ntp->jet_AntiKt4LCTopoJets_4lc_tight_wpy, Ntp->jet_AntiKt4LCTopoJets_4lc_tight_wet, Ntp->mu_muid_MET_4lc_tight_statusWord, Ntp->mu_muid_MET_4lc_tight_wpx, Ntp->mu_muid_MET_4lc_tight_wpy, Ntp->mu_muid_MET_4lc_tight_wet ); } else if(MET_type==MET_RefFinal_4lc_medium){ Set_METComposition((Ntp->MET_RefFinal_4lc_medium_etx), (Ntp->MET_RefFinal_4lc_medium_ety), (Ntp->MET_RefFinal_4lc_medium_sumet), (Ntp->MET_RefEle_4lc_medium_sumet), (Ntp->MET_RefEle_4lc_medium_etx), (Ntp->MET_RefEle_4lc_medium_ety), (Ntp->MET_RefGamma_4lc_medium_sumet), (Ntp->MET_RefGamma_4lc_medium_etx), (Ntp->MET_RefGamma_4lc_medium_ety), (Ntp->MET_RefJet_4lc_medium_sumet), (Ntp->MET_RefJet_4lc_medium_etx), (Ntp->MET_RefJet_4lc_medium_ety), (Ntp->MET_SoftJets_4lc_medium_sumet), (Ntp->MET_SoftJets_4lc_medium_etx), (Ntp->MET_SoftJets_4lc_medium_ety), (Ntp->MET_CellOut_4lc_medium_sumet), (Ntp->MET_CellOut_4lc_medium_etx), (Ntp->MET_CellOut_4lc_medium_ety), (Ntp->MET_Muon_Total_Muid_4lc_medium_sumet), (Ntp->MET_Muon_Total_Muid_4lc_medium_etx), (Ntp->MET_Muon_Total_Muid_4lc_medium_ety) ); Set_METWeights(Ntp->el_MET_4lc_medium_wpx, Ntp->el_MET_4lc_medium_wpy, Ntp->el_MET_4lc_medium_wet, Ntp->ph_MET_4lc_medium_wpx, Ntp->ph_MET_4lc_medium_wpy, Ntp->ph_MET_4lc_medium_wet, Ntp->jet_AntiKt4LCTopoJets_4lc_medium_wpx, Ntp->jet_AntiKt4LCTopoJets_4lc_medium_wpy, Ntp->jet_AntiKt4LCTopoJets_4lc_medium_wet, Ntp->mu_muid_MET_4lc_medium_statusWord, Ntp->mu_muid_MET_4lc_medium_wpx, Ntp->mu_muid_MET_4lc_medium_wpy, Ntp->mu_muid_MET_4lc_medium_wet ); } else if(MET_type==MET_RefFinal_4lc_tight_photon){ Set_METComposition((Ntp->MET_RefFinal_4lc_tight_photon_etx), (Ntp->MET_RefFinal_4lc_tight_photon_ety), (Ntp->MET_RefFinal_4lc_tight_photon_sumet), (Ntp->MET_RefEle_4lc_tight_photon_sumet), (Ntp->MET_RefEle_4lc_tight_photon_etx), (Ntp->MET_RefEle_4lc_tight_photon_ety), (Ntp->MET_RefGamma_4lc_tight_photon_sumet), (Ntp->MET_RefGamma_4lc_tight_photon_etx), (Ntp->MET_RefGamma_4lc_tight_photon_ety), (Ntp->MET_RefJet_4lc_tight_photon_sumet), (Ntp->MET_RefJet_4lc_tight_photon_etx), (Ntp->MET_RefJet_4lc_tight_photon_ety), (Ntp->MET_SoftJets_4lc_tight_photon_sumet), (Ntp->MET_SoftJets_4lc_tight_photon_etx), (Ntp->MET_SoftJets_4lc_tight_photon_ety), (Ntp->MET_CellOut_4lc_tight_photon_sumet), (Ntp->MET_CellOut_4lc_tight_photon_etx), (Ntp->MET_CellOut_4lc_tight_photon_ety), (Ntp->MET_Muon_Total_Muid_4lc_tight_photon_sumet), (Ntp->MET_Muon_Total_Muid_4lc_tight_photon_etx), (Ntp->MET_Muon_Total_Muid_4lc_tight_photon_ety) ); Set_METWeights(Ntp->el_MET_4lc_tight_photon_wpx, Ntp->el_MET_4lc_tight_photon_wpy, Ntp->el_MET_4lc_tight_photon_wet, Ntp->ph_MET_4lc_tight_photon_wpx, Ntp->ph_MET_4lc_tight_photon_wpy, Ntp->ph_MET_4lc_tight_photon_wet, Ntp->jet_AntiKt4LCTopoJets_4lc_tight_photon_wpx, Ntp->jet_AntiKt4LCTopoJets_4lc_tight_photon_wpy, Ntp->jet_AntiKt4LCTopoJets_4lc_tight_photon_wet, Ntp->mu_muid_MET_4lc_tight_photon_statusWord, Ntp->mu_muid_MET_4lc_tight_photon_wpx, Ntp->mu_muid_MET_4lc_tight_photon_wpy, Ntp->mu_muid_MET_4lc_tight_photon_wet ); } else if(MET_type==MET_RefFinal_4lc_medium_photon){ Set_METComposition((Ntp->MET_RefFinal_4lc_medium_photon_etx), (Ntp->MET_RefFinal_4lc_medium_photon_ety), (Ntp->MET_RefFinal_4lc_medium_photon_sumet), (Ntp->MET_RefEle_4lc_medium_photon_sumet), (Ntp->MET_RefEle_4lc_medium_photon_etx), (Ntp->MET_RefEle_4lc_medium_photon_ety), (Ntp->MET_RefGamma_4lc_medium_photon_sumet), (Ntp->MET_RefGamma_4lc_medium_photon_etx), (Ntp->MET_RefGamma_4lc_medium_photon_ety), (Ntp->MET_RefJet_4lc_medium_photon_sumet), (Ntp->MET_RefJet_4lc_medium_photon_etx), (Ntp->MET_RefJet_4lc_medium_photon_ety), (Ntp->MET_SoftJets_4lc_medium_photon_sumet), (Ntp->MET_SoftJets_4lc_medium_photon_etx), (Ntp->MET_SoftJets_4lc_medium_photon_ety), (Ntp->MET_CellOut_4lc_medium_photon_sumet), (Ntp->MET_CellOut_4lc_medium_photon_etx), (Ntp->MET_CellOut_4lc_medium_photon_ety), (Ntp->MET_Muon_Total_Muid_4lc_medium_photon_sumet), (Ntp->MET_Muon_Total_Muid_4lc_medium_photon_etx), (Ntp->MET_Muon_Total_Muid_4lc_medium_photon_ety) ); Set_METWeights(Ntp->el_MET_4lc_medium_photon_wpx, Ntp->el_MET_4lc_medium_photon_wpy, Ntp->el_MET_4lc_medium_photon_wet, Ntp->ph_MET_4lc_medium_photon_wpx, Ntp->ph_MET_4lc_medium_photon_wpy, Ntp->ph_MET_4lc_medium_photon_wet, Ntp->jet_AntiKt4LCTopoJets_4lc_medium_photon_wpx, Ntp->jet_AntiKt4LCTopoJets_4lc_medium_photon_wpy, Ntp->jet_AntiKt4LCTopoJets_4lc_medium_photon_wet, Ntp->mu_muid_MET_4lc_medium_photon_statusWord, Ntp->mu_muid_MET_4lc_medium_photon_wpx, Ntp->mu_muid_MET_4lc_medium_photon_wpy, Ntp->mu_muid_MET_4lc_medium_photon_wet ); } else{ std::cout << "Error MET does not exit ---- results may be invalid (Top_MET_D3PD::LinktoMET)... " << "Setting to MET definition to MET_RefFinal_em_tight" << std::endl; Set_MET_Def(MET_RefFinal_em_tight); LinktoMET(); } }