Skip to content

Commit

Permalink
Update to support newer releases and fix isolation variables (#1659)
Browse files Browse the repository at this point in the history
* SafeFill track variables

* Update to newer releases

* update CI to newer rels

* one release at a time

* Found the correct releases

* added the forgotten latest release

* Add safeFill for track params

* fix more header stuff

* some more fixes please

* fix parsing problem with LLP WPs

* turn on dummy SF root file

---------

Co-authored-by: Audrey Katherine Kvam <audrey.katherine.kvam@cern.ch>
Co-authored-by: Sagar Addepalli <addepalli.sagar@cern.ch>
Co-authored-by: Max Goblirsch <98332675+goblirsc@users.noreply.github.com>
  • Loading branch information
4 people committed Oct 10, 2023
1 parent f815c7c commit 0111e8c
Show file tree
Hide file tree
Showing 21 changed files with 298 additions and 260 deletions.
15 changes: 6 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,12 @@ jobs:
release_type:
- analysisbase
release_version:
- 24.2.1
- 24.2.2
- 24.2.3
- 24.2.4
- 24.2.5
- 24.2.6
- 24.2.7
- 24.2.8
- 24.2.9
- 24.2.20
- 24.2.21
- 24.2.22
- 24.2.23
- 24.2.24
- 24.2.25

steps:
- uses: actions/checkout@master
Expand Down
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ atlas_add_library( xAODAnaHelpersLib xAODAnaHelpers/*.h Root/*.h Root/*.cxx ${xA
ElectronPhotonFourMomentumCorrectionLib
ElectronEfficiencyCorrectionLib ElectronPhotonSelectorToolsLib
IsolationSelectionLib IsolationCorrectionsLib
ElectronPhotonShowerShapeFudgeToolLib
EGammaVariableCorrectionLib
FTagAnalysisInterfacesLib JetAnalysisInterfacesLib MuonAnalysisInterfacesLib
PhotonEfficiencyCorrectionLib METUtilitiesLib METInterface
Expand Down
62 changes: 40 additions & 22 deletions Root/ElectronContainer.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,18 @@ ElectronContainer::ElectronContainer(const std::string& name, const std::string&
}

if ( m_infoSwitch.m_isolationKinematics ) {
m_ptvarcone20 = new std::vector<float> ();
m_topoetcone20 = new std::vector<float> ();
m_topoetcone40 = new std::vector<float> ();
m_neflowisol20 = new std::vector<float> ();
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 = new std::vector<float> ();
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 = new std::vector<float> ();
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500 = new std::vector<float> ();
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 = new std::vector<float> ();
}
if ( m_infoSwitch.m_closeByCorr ) {
m_topoetcone20_CloseByCorr = new std::vector<float> ();
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr = new std::vector<float> ();
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr = new std::vector<float> ();
}

if ( m_infoSwitch.m_PID ) {
m_PID = new std::map< std::string, std::vector< int >* >();
Expand Down Expand Up @@ -153,15 +156,18 @@ ElectronContainer::~ElectronContainer()
}

if ( m_infoSwitch.m_isolationKinematics ) {
delete m_ptvarcone20 ;
delete m_topoetcone20 ;
delete m_topoetcone40 ;
delete m_neflowisol20 ;
delete m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ;
delete m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ;
delete m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ;
delete m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ;
}
if ( m_infoSwitch.m_closeByCorr ) {
delete m_topoetcone20_CloseByCorr ;
delete m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ;
delete m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ;
}

if ( m_infoSwitch.m_PID ) {
for (auto& PID : m_infoSwitch.m_PIDWPs) {
Expand Down Expand Up @@ -275,14 +281,17 @@ void ElectronContainer::setTree(TTree *tree)
}

if ( m_infoSwitch.m_isolationKinematics ) {
connectBranch<float>(tree, "ptvarcone20", &m_ptvarcone20);
connectBranch<float>(tree, "topoetcone20", &m_topoetcone20);
connectBranch<float>(tree, "topoetcone40", &m_topoetcone40);
connectBranch<float>(tree, "neflowisol20", &m_neflowisol20);
connectBranch<float>(tree, "ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500", &m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
connectBranch<float>(tree, "ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000", &m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
connectBranch<float>(tree, "ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500", &m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
connectBranch<float>(tree, "ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000", &m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
connectBranch<float>(tree, "ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000", &m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
}
if ( m_infoSwitch.m_closeByCorr ) {
connectBranch<float>(tree, "topoetcone20_CloseByCorr", &m_topoetcone20_CloseByCorr) ;
connectBranch<float>(tree, "ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr", &m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr) ;
connectBranch<float>(tree, "ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr", &m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr) ;
}

if ( m_infoSwitch.m_PID ) {
Expand Down Expand Up @@ -394,15 +403,18 @@ void ElectronContainer::updateParticle(uint idx, Electron& elec)
}

if ( m_infoSwitch.m_isolationKinematics ) {
elec.ptvarcone20 = m_ptvarcone20 ->at(idx);
elec.topoetcone20 = m_topoetcone20 ->at(idx);
elec.topoetcone40 = m_topoetcone40 ->at(idx);
elec.neflowisol20 = m_neflowisol20 ->at(idx);
elec.ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 = m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ->at(idx);
elec.ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 = m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ->at(idx);
elec.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500 = m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ->at(idx);
elec.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 = m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ->at(idx);
}
if ( m_infoSwitch.m_closeByCorr ) {
elec.topoetcone20_CloseByCorr = m_topoetcone20_CloseByCorr ->at(idx);
elec.ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr = m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ->at(idx);
elec.ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr = m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ->at(idx);
}

// quality
if ( m_infoSwitch.m_PID ) {
Expand Down Expand Up @@ -513,15 +525,18 @@ void ElectronContainer::setBranches(TTree *tree)
}

if ( m_infoSwitch.m_isolationKinematics ) {
setBranch<float>(tree, "ptvarcone20", m_ptvarcone20);
setBranch<float>(tree, "topoetcone20", m_topoetcone20);
setBranch<float>(tree, "topoetcone40", m_topoetcone40);
setBranch<float>(tree, "neflowisol20", m_neflowisol20);
setBranch<float>(tree, "ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500", m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
setBranch<float>(tree, "ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000", m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
setBranch<float>(tree, "ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500", m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
setBranch<float>(tree, "ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000", m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
}
if ( m_infoSwitch.m_closeByCorr ) {
setBranch<float>(tree, "topoetcone20_CloseByCorr", m_topoetcone20_CloseByCorr );
setBranch<float>(tree, "ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr", m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr );
setBranch<float>(tree, "ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr", m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr );
}

if ( m_infoSwitch.m_PID ) {
for (auto& PID : m_infoSwitch.m_PIDWPs) {
Expand Down Expand Up @@ -630,15 +645,18 @@ void ElectronContainer::clear()
}

if ( m_infoSwitch.m_isolationKinematics ) {
m_ptvarcone20 ->clear();
m_topoetcone20 ->clear();
m_topoetcone40 ->clear();
m_neflowisol20 ->clear();
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ->clear();
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ->clear();
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ->clear();
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ->clear();
}
if ( m_infoSwitch.m_closeByCorr ) {
m_topoetcone20_CloseByCorr ->clear();
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ->clear();
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ->clear();
}

if ( m_infoSwitch.m_PID ) {
for (auto& PID : m_infoSwitch.m_PIDWPs) {
Expand Down Expand Up @@ -785,21 +803,21 @@ void ElectronContainer::FillElectron( const xAOD::IParticle* particle, const xAO
}

if ( m_infoSwitch.m_isolationKinematics ) {
if ( m_infoSwitch.m_doLRT ) {
m_ptvarcone20 ->push_back(-1.);
m_neflowisol20->push_back(-1.);
}
else {
m_ptvarcone20 ->push_back( elec->isolation( xAOD::Iso::ptvarcone20 ) /m_units );
m_neflowisol20->push_back( elec->isolation( xAOD::Iso::neflowisol20 )/m_units );
}
m_topoetcone20->push_back( elec->isolation( xAOD::Iso::topoetcone20 )/m_units );
m_topoetcone40->push_back( elec->isolation( xAOD::Iso::topoetcone40 )/m_units );
m_neflowisol20->push_back(m_infoSwitch.m_doLRT ? -1. : elec->isolation( xAOD::Iso::neflowisol20 )/m_units );
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ->push_back( elec->isolation( xAOD::Iso::ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ) /m_units );
m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ->push_back( elec->isolation( xAOD::Iso::ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 ) /m_units );
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ->push_back( elec->isolation( xAOD::Iso::ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ) /m_units );
m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000->push_back( elec->isolation( xAOD::Iso::ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000 )/m_units );
}
if ( m_infoSwitch.m_closeByCorr ) {
SG::AuxElement::Accessor<float> acc_topoetcone20_CloseByCorr ("topoetcone20_CloseByCorr");
SG::AuxElement::Accessor<float> acc_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ("ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr");
SG::AuxElement::Accessor<float> acc_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr ("ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr");
safeFill<float, float, xAOD::Electron>(elec, acc_topoetcone20_CloseByCorr, m_topoetcone20_CloseByCorr, -1, m_units);
safeFill<float, float, xAOD::Electron>(elec, acc_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr, m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr, -1, m_units);
safeFill<float, float, xAOD::Electron>(elec, acc_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr, m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr, -1, m_units);
}

if ( m_infoSwitch.m_PID ) {
static std::map< std::string, SG::AuxElement::Accessor<char> > accPID;
Expand Down
71 changes: 35 additions & 36 deletions Root/ElectronSelector.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -196,10 +196,10 @@ EL::StatusCode ElectronSelector :: initialize ()
m_LHOperatingPoint != "LooseBL" &&
m_LHOperatingPoint != "Medium" &&
m_LHOperatingPoint != "Tight" &&
m_LHOperatingPoint != "VeryLooseLLP" &&
m_LHOperatingPoint != "LooseLLP" &&
m_LHOperatingPoint != "MediumLLP" &&
m_LHOperatingPoint != "TightLLP" ) {
m_LHOperatingPoint != "VeryLooseLLP" && m_LHOperatingPoint != "VeryLooseNoPix" &&
m_LHOperatingPoint != "LooseLLP" && m_LHOperatingPoint != "LooseNoPix" &&
m_LHOperatingPoint != "MediumLLP" && m_LHOperatingPoint != "MediumNoPix" &&
m_LHOperatingPoint != "TightLLP" && m_LHOperatingPoint != "TightNoPix" ) {
ANA_MSG_ERROR( "Unknown electron likelihood PID requested " << m_LHOperatingPoint);
return EL::StatusCode::FAILURE;
}
Expand Down Expand Up @@ -302,6 +302,7 @@ EL::StatusCode ElectronSelector :: initialize ()
ANA_MSG_DEBUG( "Adding isolation WP " << m_IsoKeys.at(0) << " to IsolationSelectionTool" );
ANA_CHECK( m_isolationSelectionTool_handle.setProperty("ElectronWP", (m_IsoKeys.at(0)).c_str()));
ANA_CHECK( m_isolationSelectionTool_handle.setProperty("OutputLevel", msg().level()));
if (m_isoDecSuffix!="") ANA_CHECK ( m_isolationSelectionTool_handle.setProperty("IsoDecSuffix", m_isoDecSuffix) );
ANA_CHECK( m_isolationSelectionTool_handle.retrieve());
ANA_MSG_DEBUG("Retrieved tool: " << m_isolationSelectionTool_handle);
m_isolationSelectionTool = dynamic_cast<CP::IsolationSelectionTool*>(m_isolationSelectionTool_handle.get() ); // see header file for why
Expand Down Expand Up @@ -1019,62 +1020,60 @@ int ElectronSelector :: passCuts( const xAOD::Electron* electron, const xAOD::Ve
const static SG::AuxElement::ConstAccessor<char> acc_EG_Medium("DFCommonElectronsLHMedium");
const static SG::AuxElement::ConstAccessor<char> acc_EG_Tight("DFCommonElectronsLHTight");

const static SG::AuxElement::ConstAccessor<char> acc_EG_VeryLooseNoPix("DFCommonElectronsLHVeryLooseNoPix");
const static SG::AuxElement::ConstAccessor<char> acc_EG_LooseNoPix("DFCommonElectronsLHLooseNoPix");
const static SG::AuxElement::ConstAccessor<char> acc_EG_MediumNoPix("DFCommonElectronsLHMediumNoPix");
const static SG::AuxElement::ConstAccessor<char> acc_EG_TightNoPix("DFCommonElectronsLHTightNoPix");

if ( m_doLHPIDcut ) {

bool passSelID(false);
SG::AuxElement::ConstAccessor< char > LHDecision( "DFCommonElectronsLH" + m_LHOperatingPoint );
if( LHDecision.isAvailable( *electron ) ){
if (m_doModifiedEleId){
if(m_LHOperatingPoint == "Tight"){
passSelID = acc_EG_Medium( *electron ) && acc_EG_Tight( *electron );
} else if(m_LHOperatingPoint == "Medium"){
passSelID = ( acc_EG_Loose( *electron ) && acc_EG_Medium( *electron ) ) || acc_EG_Tight( *electron );
} else if (m_LHOperatingPoint == "Loose") {
passSelID = acc_EG_Medium( *electron ) || acc_EG_Loose( *electron );
} else { passSelID = LHDecision( *electron ); }
}
else
if (m_doModifiedEleId){
if(m_LHOperatingPoint == "Tight"){
passSelID = acc_EG_Medium( *electron ) && acc_EG_Tight( *electron );
} else if(m_LHOperatingPoint == "Medium"){
passSelID = ( acc_EG_Loose( *electron ) && acc_EG_Medium( *electron ) ) || acc_EG_Tight( *electron );
} else if (m_LHOperatingPoint == "Loose") {
passSelID = acc_EG_Medium( *electron ) || acc_EG_Loose( *electron );
} else { passSelID = LHDecision( *electron ); }
}
else {
passSelID = LHDecision( *electron );
}
if ( !passSelID ) {
ANA_MSG_DEBUG( "Electron failed likelihood PID cut w/ operating point " << m_LHOperatingPoint );
}
}
if ( !passSelID ) {
ANA_MSG_DEBUG( "Electron failed likelihood PID cut w/ operating point " << m_LHOperatingPoint );
return 0;
}
}

const std::set<std::string> myLHWPs = m_el_LH_PIDManager->getValidWPs();
for ( auto it : (myLHWPs) ) {

const std::string decorWP = "LH"+it;

bool passThisID(false);
SG::AuxElement::ConstAccessor< char > LHDecisionAll( "DFCommonElectrons" + decorWP );

if( LHDecisionAll.isAvailable( *electron ) ){
if (m_doModifiedEleId){
if(decorWP == "LHTight"){
passThisID = acc_EG_Medium( *electron ) && acc_EG_Tight( *electron );
} else if(decorWP == "LHMedium"){
passThisID = ( acc_EG_Loose( *electron ) && acc_EG_Medium( *electron ) ) || acc_EG_Tight( *electron );
} else if (decorWP == "LHLoose") {
passThisID = acc_EG_Medium( *electron ) || acc_EG_Loose( *electron );
} else { passThisID = LHDecisionAll( *electron ); }
}
else

if (m_doModifiedEleId){
if(decorWP == "LHTight"){
passThisID = acc_EG_Medium( *electron ) && acc_EG_Tight( *electron );
} else if(decorWP == "LHMedium"){
passThisID = ( acc_EG_Loose( *electron ) && acc_EG_Medium( *electron ) ) || acc_EG_Tight( *electron );
} else if (decorWP == "LHLoose") {
passThisID = acc_EG_Medium( *electron ) || acc_EG_Loose( *electron );
} else { passThisID = LHDecisionAll( *electron ); }
}
else {
passThisID = LHDecisionAll( *electron );
}
}
}

ANA_MSG_DEBUG( "Decorating electron with decision for LH WP : " << decorWP );
ANA_MSG_DEBUG( "\t does electron pass " << decorWP << "? " << passThisID );
electron->auxdecor<char>(decorWP) = static_cast<char>( passThisID );

}

} else {
}
else {

// retrieve only tools with WP >= selected WP, cut electrons if not satisfying selected WP, and decorate w/ tool decision all the others
//
Expand Down
5 changes: 5 additions & 0 deletions Root/HelperClasses.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ namespace HelperClasses{
std::string ptvarcone30("ptvarcone30"); enumMap.insert(std::make_pair(ptvarcone30, xAOD::Iso::ptvarcone30));
std::string ptvarcone40("ptvarcone40"); enumMap.insert(std::make_pair(ptvarcone40, xAOD::Iso::ptvarcone40));
std::string neflowisol20("neflowisol20"); enumMap.insert(std::make_pair(neflowisol20, xAOD::Iso::neflowisol20));
std::string ptcone20_Nonprompt_All_MaxWeightTTVA_pt500 ("ptcone20_Nonprompt_All_MaxWeightTTVA_pt500"); enumMap.insert(std::make_pair(ptcone20_Nonprompt_All_MaxWeightTTVA_pt500, xAOD::Iso::ptcone20_Nonprompt_All_MaxWeightTTVA_pt500));
std::string ptcone20_Nonprompt_All_MaxWeightTTVA_pt1000("ptcone20_Nonprompt_All_MaxWeightTTVA_pt1000"); enumMap.insert(std::make_pair(ptcone20_Nonprompt_All_MaxWeightTTVA_pt1000, xAOD::Iso::ptcone20_Nonprompt_All_MaxWeightTTVA_pt1000));
std::string ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500 ("ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500"); enumMap.insert(std::make_pair(ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500, xAOD::Iso::ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500));
std::string ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000("ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000"); enumMap.insert(std::make_pair(ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000, xAOD::Iso::ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000));
std::string ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500 ("ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500"); enumMap.insert(std::make_pair(ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500, xAOD::Iso::ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500));
Expand Down Expand Up @@ -223,6 +225,7 @@ namespace HelperClasses{
m_ttvaEff_sysNames = has_exact("ttvaEff_sysNames");

m_doLRT = has_exact("doLRT");
m_closeByCorr = has_exact("IsolCloseByCorr");

}

Expand Down Expand Up @@ -273,6 +276,8 @@ namespace HelperClasses{
m_passOR = has_exact("passOR");
//Add LRT flag
m_doLRT = has_exact("doLRT");

m_closeByCorr = has_exact("IsolCloseByCorr");
}

void PhotonInfoSwitch::initialize(){
Expand Down
Loading

0 comments on commit 0111e8c

Please sign in to comment.