From 748d983548aa4c432042527368b7f9c12ec69ad0 Mon Sep 17 00:00:00 2001 From: Lindsey Gray Date: Wed, 29 Nov 2023 11:37:49 -0600 Subject: [PATCH 1/3] add a flag to convert avg. inst. lumi to int. lumi if LumiData file is avg. inst. lumi --- src/coffea/lumi_tools/lumi_tools.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/coffea/lumi_tools/lumi_tools.py b/src/coffea/lumi_tools/lumi_tools.py index 7418ab002..3b466ed64 100644 --- a/src/coffea/lumi_tools/lumi_tools.py +++ b/src/coffea/lumi_tools/lumi_tools.py @@ -22,9 +22,16 @@ class LumiData: brilcalc lumi -c /cvmfs/cms.cern.ch/SITECONF/local/JobConfig/site-local-config.xml \ -b "STABLE BEAMS" --normtag=/cvmfs/cms-bril.cern.ch/cms-lumi-pog/Normtags/normtag_PHYSICS.json \ -u /pb --byls --output-style csv -i Cert_294927-306462_13TeV_PromptReco_Collisions17_JSON.txt > lumi2017.csv + + Note that some brilcalc files may be in different units than inverse picobarns, including possibly average instantaneous luminosity. + You should make sure that you understand the units of the LumiData file you are using before calculating luminosity with this tool. + If you are using a LumiData file containing avg. inst. luminosity, make sure to set is_inst_lumi=True in the constructor of this class. """ - def __init__(self, lumi_csv): + seconds_per_lumi_LHC = 2**18 / (40079000/3564) + + def __init__(self, lumi_csv, is_inst_lumi=False): + self._is_inst_lumi = inst_lumi self._lumidata = np.loadtxt( lumi_csv, delimiter=",", @@ -58,7 +65,7 @@ def get_lumi(self, runlumis): runlumis = runlumis.array tot_lumi = np.zeros((1,), dtype=np.dtype("float64")) LumiData._get_lumi_kernel(runlumis[:, 0], runlumis[:, 1], self.index, tot_lumi) - return tot_lumi[0] + return tot_lumi[0] * (self.seconds_per_lumi_LHC if self._is_inst_lumi else 1.0) @staticmethod @numba.njit(parallel=False, fastmath=False) From f23601a359f94c0e577c92dddc591772bbc69e16 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 29 Nov 2023 17:39:51 +0000 Subject: [PATCH 2/3] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/coffea/lumi_tools/lumi_tools.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/coffea/lumi_tools/lumi_tools.py b/src/coffea/lumi_tools/lumi_tools.py index 3b466ed64..11a8c0a69 100644 --- a/src/coffea/lumi_tools/lumi_tools.py +++ b/src/coffea/lumi_tools/lumi_tools.py @@ -28,8 +28,8 @@ class LumiData: If you are using a LumiData file containing avg. inst. luminosity, make sure to set is_inst_lumi=True in the constructor of this class. """ - seconds_per_lumi_LHC = 2**18 / (40079000/3564) - + seconds_per_lumi_LHC = 2**18 / (40079000 / 3564) + def __init__(self, lumi_csv, is_inst_lumi=False): self._is_inst_lumi = inst_lumi self._lumidata = np.loadtxt( From eecaeec1c158abe8fc45754e4ce18a9595d4f4f2 Mon Sep 17 00:00:00 2001 From: Lindsey Gray Date: Wed, 29 Nov 2023 11:40:22 -0600 Subject: [PATCH 3/3] typo --- src/coffea/lumi_tools/lumi_tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/coffea/lumi_tools/lumi_tools.py b/src/coffea/lumi_tools/lumi_tools.py index 11a8c0a69..e55230af0 100644 --- a/src/coffea/lumi_tools/lumi_tools.py +++ b/src/coffea/lumi_tools/lumi_tools.py @@ -31,7 +31,7 @@ class LumiData: seconds_per_lumi_LHC = 2**18 / (40079000 / 3564) def __init__(self, lumi_csv, is_inst_lumi=False): - self._is_inst_lumi = inst_lumi + self._is_inst_lumi = is_inst_lumi self._lumidata = np.loadtxt( lumi_csv, delimiter=",",