From a2cbe912aaea6aaa28ddd72a706712a5db82f84c Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin <dkalinkin@bnl.gov> Date: Thu, 29 Aug 2024 01:28:36 -0400 Subject: [PATCH] dis: enable backwards-compatibility with previous versions of EICrecon (#29) --- benchmarks/dis/analysis/dis_electrons.cxx | 18 ++++++++++++++++-- .../dis/analysis/kinematics_correlations.py | 9 +++++++-- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/benchmarks/dis/analysis/dis_electrons.cxx b/benchmarks/dis/analysis/dis_electrons.cxx index 716c2b04..7f3d135e 100644 --- a/benchmarks/dis/analysis/dis_electrons.cxx +++ b/benchmarks/dis/analysis/dis_electrons.cxx @@ -61,6 +61,20 @@ int dis_electrons(const std::string& config_name) ROOT::EnableImplicitMT(kNumThreads); ROOT::RDataFrame d("events", rec_file); + std::string esigma_Q2_col_name, esigma_x_col_name; + if (d.HasColumn("InclusiveKinematicsESigma.Q2")) { + // new style + esigma_Q2_col_name = "InclusiveKinematicsESigma.Q2"; + esigma_x_col_name = "InclusiveKinematicsESigma.Q2"; + } else if (d.HasColumn("InclusiveKinematicseSigma.x")) { + // new style + esigma_Q2_col_name = "InclusiveKinematicseSigma.Q2"; + esigma_x_col_name = "InclusiveKinematicseSigma.x"; + } else { + std::cerr << "Can't find InclusiveKinematicsESigma.Q2 column" << std::endl; + std::exit(EXIT_FAILURE); + } + auto combinatorial_diff_ratio = [] ( const ROOT::VecOps::RVec<float>& v1, const ROOT::VecOps::RVec<float>& v2 @@ -81,7 +95,7 @@ int dis_electrons(const std::string& config_name) .Define("Q2_jb", "InclusiveKinematicsJB.Q2") .Define("Q2_da", "InclusiveKinematicsDA.Q2") .Define("Q2_sigma", "InclusiveKinematicsSigma.Q2") - .Define("Q2_esigma", "InclusiveKinematicsESigma.Q2") + .Define("Q2_esigma", esigma_Q2_col_name) // InclusiveKinematicsESigma.Q2 .Define("logQ2_sim", "log10(Q2_sim)") .Define("logQ2_el", "log10(Q2_el)") .Define("logQ2_jb", "log10(Q2_jb)") @@ -98,7 +112,7 @@ int dis_electrons(const std::string& config_name) .Define("x_jb", "InclusiveKinematicsJB.x") .Define("x_da", "InclusiveKinematicsDA.x") .Define("x_sigma", "InclusiveKinematicsSigma.x") - .Define("x_esigma", "InclusiveKinematicsESigma.x") + .Define("x_esigma", esigma_x_col_name) // InclusiveKinematicsESigma.x .Define("x_el_res", combinatorial_diff_ratio, {"x_sim", "x_el"}) .Define("x_jb_res", combinatorial_diff_ratio, {"x_sim", "x_jb"}) .Define("x_da_res", combinatorial_diff_ratio, {"x_sim", "x_da"}) diff --git a/benchmarks/dis/analysis/kinematics_correlations.py b/benchmarks/dis/analysis/kinematics_correlations.py index 3bfd316e..c3c92db5 100644 --- a/benchmarks/dis/analysis/kinematics_correlations.py +++ b/benchmarks/dis/analysis/kinematics_correlations.py @@ -161,8 +161,13 @@ keys = ur.concatenate(rec_file + ':events/' + 'InclusiveKinematicsJB') JacquetBlondel = [keys['InclusiveKinematicsJB.Q2'], keys['InclusiveKinematicsJB.x']] keys = ur.concatenate(rec_file + ':events/' + 'InclusiveKinematicsSigma') Sigma = [keys['InclusiveKinematicsSigma.Q2'], keys['InclusiveKinematicsSigma.x']] -keys = ur.concatenate(rec_file + ':events/' + 'InclusiveKinematicsESigma') -ESigma = [keys['InclusiveKinematicsESigma.Q2'], keys['InclusiveKinematicsESigma.x']] +try: + keys = ur.concatenate(rec_file + ':events/' + 'InclusiveKinematicsESigma') + ESigma = [keys['InclusiveKinematicsESigma.Q2'], keys['InclusiveKinematicsESigma.x']] +except ur.KeyInFileError: + # Legacy compatibility + keys = ur.concatenate(rec_file + ':events/' + 'InclusiveKinematicseSigma') + ESigma = [keys['InclusiveKinematicseSigma.Q2'], keys['InclusiveKinematicseSigma.x']] Q2values_T = Truth[0] Q2values_E = Electron[0] -- GitLab