diff --git a/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/InDetTrackSystematicsTools/InDetTrackSmearingTool.h b/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/InDetTrackSystematicsTools/InDetTrackSmearingTool.h index faf05180e5df24284f672d71b9d649a0ecc0bca0..e9b231a4f35446e549e55b039c4dafb4053a86d9 100644 --- a/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/InDetTrackSystematicsTools/InDetTrackSmearingTool.h +++ b/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/InDetTrackSystematicsTools/InDetTrackSmearingTool.h @@ -101,6 +101,7 @@ namespace InDet { std::string m_calibFileIP_lowpt; std::string m_calibFileIP_highpt; + std::string m_MCSubcampaign; }; /// class InDetTrackSmearingTool diff --git a/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/Root/InDetTrackSmearingTool.cxx b/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/Root/InDetTrackSmearingTool.cxx index f4455edba8e212d2f2bb703456316c69553cbb3e..efe8ab4f88dbf45971aa9da4c13975b0d1765432 100644 --- a/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/Root/InDetTrackSmearingTool.cxx +++ b/PhysicsAnalysis/TrackingID/InDetTrackSystematicsTools/Root/InDetTrackSmearingTool.cxx @@ -58,11 +58,12 @@ namespace InDet { declareProperty("Seed", m_seed); - declareProperty("calibFileD0Dead", m_calibFileD0Dead = "InDetTrackSystematicsTools/CalibData_21.2_2018-v17/res_diff_d0_vs_pt.hist.root"); - declareProperty("calibFileZ0Dead", m_calibFileZ0Dead = "InDetTrackSystematicsTools/CalibData_21.2_2018-v17/res_diff_z0_vs_pt.hist.root"); + declareProperty("calibFileD0Dead", m_calibFileD0Dead = "InDetTrackSystematicsTools/CalibData_21.2_2018-v19/res_diff_d0_vs_pt.hist.root"); + declareProperty("calibFileZ0Dead", m_calibFileZ0Dead = "InDetTrackSystematicsTools/CalibData_21.2_2018-v19/res_diff_z0_vs_pt.hist.root"); - declareProperty("calibFileIP_lowpt", m_calibFileIP_lowpt = "InDetTrackSystematicsTools/CalibData_21.2_2018-v17/trackIPAlign_dec2017.root"); - declareProperty("calibFileIP_highpt", m_calibFileIP_highpt = "InDetTrackSystematicsTools/CalibData_21.2_2018-v17/trackIPAlignTight.root"); + declareProperty("calibFileIP_lowpt", m_calibFileIP_lowpt = "InDetTrackSystematicsTools/CalibData_21.2_2018-v19/trackIPAlign_dec2017.root"); + declareProperty("calibFileIP_highpt", m_calibFileIP_highpt = "InDetTrackSystematicsTools/CalibData_21.2_2018-v19/trackIPAlignTight.root"); + declareProperty("MCSubcampaign", m_MCSubcampaign = "MC16a"); } @@ -71,6 +72,18 @@ namespace InDet { // Greet the user: ATH_MSG_INFO( "Initializing..." ); + // use a different highpt smearing map depending on the MC sub-campaign + if (m_MCSubcampaign == "MC16a") { + ATH_MSG_INFO( "Using MC16a smearing map configuration" ); + m_calibFileIP_highpt = "InDetTrackSystematicsTools/CalibData_21.2_2018-v19/trackIPAlignTight.root"; + } else if (m_MCSubcampaign == "MC16c" || m_MCSubcampaign == "MC16d") { + ATH_MSG_INFO( "Using MC16c/d smearing map configuration" ); + m_calibFileIP_highpt = "InDetTrackSystematicsTools/CalibData_21.2_2018-v19/trackIPAlignTight2017.root"; + } else { + ATH_MSG_ERROR( "Unrecognized MCSubcampaign" ); + return StatusCode::FAILURE; + } + ATH_CHECK( initObject<TH1>(m_smearD0Dead, m_calibFileD0Dead, "res_pt_d0_0") ); ATH_CHECK( initObject<TH1>(m_smearZ0Dead, m_calibFileZ0Dead, "res_pt_z0_0") );